@@ -55,10 +55,7 @@ const devoptab_t dotab_stdnull = {
5555//---------------------------------------------------------------------------------
5656const devoptab_t * devoptab_list [STD_MAX ] = {
5757//---------------------------------------------------------------------------------
58- & dotab_stdnull , & dotab_stdnull , & dotab_stdnull , & dotab_stdnull ,
59- & dotab_stdnull , & dotab_stdnull , & dotab_stdnull , & dotab_stdnull ,
60- & dotab_stdnull , & dotab_stdnull , & dotab_stdnull , & dotab_stdnull ,
61- & dotab_stdnull , & dotab_stdnull , & dotab_stdnull , & dotab_stdnull
58+ & dotab_stdnull , & dotab_stdnull , & dotab_stdnull
6259};
6360
6461//---------------------------------------------------------------------------------
@@ -77,10 +74,8 @@ int FindDevice(const char* name) {
7774 if (devoptab_list [i ]) {
7875 namelen = strlen (devoptab_list [i ]-> name );
7976 if (dev_namelen == namelen && strncmp (devoptab_list [i ]-> name ,name ,namelen )== 0 ) {
80- if ( name [namelen ] == ':' || (isdigit (name [namelen ]) && name [namelen + 1 ] == ':' )) {
81- dev = i ;
82- break ;
83- }
77+ dev = i ;
78+ break ;
8479 }
8580 }
8681 i ++ ;
@@ -95,7 +90,7 @@ int RemoveDevice( const char* name) {
9590 int dev = FindDevice (name );
9691
9792 if ( -1 != dev ) {
98- devoptab_list [dev ] = & dotab_stdnull ;
93+ devoptab_list [dev ] = NULL ;
9994 return 0 ;
10095 }
10196
@@ -110,12 +105,11 @@ int AddDevice( const devoptab_t* device) {
110105 int devnum ;
111106
112107 for ( devnum = 3 ;devnum < STD_MAX ; devnum ++ ) {
108+ // null pointer is available
109+ if ( devoptab_list [devnum ] == NULL ) break ;
113110
114- if ( (!strcmp (devoptab_list [devnum ]-> name , device -> name ) &&
115- strlen (devoptab_list [devnum ]-> name ) == strlen (device -> name ) ) ||
116- !strcmp (devoptab_list [devnum ]-> name , "stdnull" )
117- )
118- break ;
111+ if ( !strcmp (devoptab_list [devnum ]-> name , device -> name ) && strlen (devoptab_list [devnum ]-> name ) == strlen (device -> name ) )
112+ break ;
119113 }
120114
121115 if ( devnum == STD_MAX ) {
0 commit comments