summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi/src/io.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/sapi/src/io.c')
-rw-r--r--cpukit/sapi/src/io.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/cpukit/sapi/src/io.c b/cpukit/sapi/src/io.c
index 823427fd47..c989711535 100644
--- a/cpukit/sapi/src/io.c
+++ b/cpukit/sapi/src/io.c
@@ -136,15 +136,16 @@ rtems_status_code rtems_io_register_driver(
if ( major == 0 )
{
+ bool found = FALSE;
for ( major = _IO_Number_of_drivers - 1 ; major ; major-- )
if ( _IO_Driver_address_table[major].initialization_entry == 0 &&
- _IO_Driver_address_table[major].open_entry == 0 )
+ _IO_Driver_address_table[major].open_entry == 0 ) {
+ found = FALSE;
break;
+ }
- if (( major == 0 ) &&
- ( _IO_Driver_address_table[major].initialization_entry == 0 &&
- _IO_Driver_address_table[major].open_entry == 0 ))
- return RTEMS_TOO_MANY;
+ if ( !found )
+ return RTEMS_TOO_MANY;
}
if ( _IO_Driver_address_table[major].initialization_entry == 0 &&