Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
 Couple bugs
Today, 5:42 pm
By Remcon
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
Bug in will_fall( )
Oct 23, 2017, 1:35 am
By GatewaySysop
Bug in do_zap( ), do_brandish( )
Oct 18, 2017, 1:52 pm
By GatewaySysop
Bug in get_exp_worth( )
Oct 10, 2017, 1:26 am
By GatewaySysop
LOP 1.45
Author: Remcon
Submitted by: Remcon
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Memwatch
Author: Johan Lindh
Submitted by: Vladaar
Users Online
CommonCrawl, Google, Yandex, Yahoo!, Sogou

Members: 0
Guests: 16
Stats
Files
Topics
Posts
Members
Newest Member
477
3,705
19,232
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » General » Coding » Calareymud loadarea crash
Forum Rules | Mark all | Recent Posts

Calareymud loadarea crash
< Newer Topic :: Older Topic >

Pages:<< prev 1, 2, 3, 4, 5 ... next >>
Post is unread #21 Aug 3, 2013, 7:20 pm   Last edited Aug 3, 2013, 7:20 pm by Remcon
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

imc.c
---------

imc.c: In function ‘imcone_argument’:
imc.c:356:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


imc.c: In function ‘imcone_argument’:
imc.c:380:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


imc.c: In function ‘imccapitalize’:
imc.c:543:7: warning: array subscript has type ‘char’
imc.c:545:4: warning: array subscript has type ‘char’

find
   for( i = 0; str[i] != '\0'; i++ )
      strcap[i] = tolower( str[i] );
   strcap[i] = '\0';
   strcap[0] = toupper( strcap[0] );

change it to
   for( i = 0; str[i] != '\0'; i++ )
      strcap[i] = tolower( (int)str[i] );
   strcap[i] = '\0';
   strcap[0] = toupper( (int)strcap[0] );


imc.c: In function ‘imcfread_number’:
imc.c:1126:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


imc.c: In function ‘imcfread_number’:
imc.c:1139:4: warning: array subscript has type ‘char’

find
   if( !isdigit( c ) )

change it to
   if( !isdigit( (int)c ) )


imc.c: In function ‘imcfread_number’:
imc.c:1145:4: warning: array subscript has type ‘char’

find
   while( isdigit( c ) )

change it to
   while( isdigit( (int)c ) )


imc.c: In function ‘imcfread_line’:
imc.c:1195:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


imc.c: In function ‘imcfread_word’:
imc.c:1255:4: warning: array subscript has type ‘char’

find
   while( isspace( cEnd ) );

change it to
   while( isspace( (int)cEnd ) );


imc.c: In function ‘imcfread_word’:
imc.c:1277:7: warning: array subscript has type ‘char’

find
      if( cEnd == ' ' ? isspace( *pword ) : *pword == cEnd )

change it to
      if( cEnd == ' ' ? isspace( (int)*pword ) : *pword == cEnd )


imc.c: In function ‘imcfread_letter’:
imc.c:1333:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


imc.c: In function ‘imc_recv_broadcast’:
imc.c:1909:8: warning: the address of ‘sender’ will always evaluate as ‘true’

find
   if( !sender || sender[0] == '\0' )

change it to
   if( sender == NULL || sender[0] == '\0' )


imc.c: In function ‘imc_recv_isalive’:
imc.c:2500:8: warning: the address of ‘url’ will always evaluate as ‘true’
imc.c:2506:8: warning: the address of ‘version’ will always evaluate as ‘true’
imc.c:2512:8: warning: the address of ‘netname’ will always evaluate as ‘true’

find
   if( url && url[0] != '\0' )
   {
      IMCSTRFREE( r->url );
      r->url = IMCSTRALLOC( url );
   }

   if( version && version[0] != '\0' )
   {
      IMCSTRFREE( r->version );
      r->version = IMCSTRALLOC( version );
   }

   if( netname && netname[0] != '\0' )
   {
      IMCSTRFREE( r->network );
      r->network = IMCSTRALLOC( netname );
   }

change it to
   if( url != NULL && url[0] != '\0' )
   {
      IMCSTRFREE( r->url );
      r->url = IMCSTRALLOC( url );
   }

   if( version != NULL && version[0] != '\0' )
   {
      IMCSTRFREE( r->version );
      r->version = IMCSTRALLOC( version );
   }

   if( netname != NULL && netname[0] != '\0' )
   {
      IMCSTRFREE( r->network );
      r->network = IMCSTRALLOC( netname );
   }


imc.c: In function ‘imc_recv_iceupdate’:
imc.c:2593:8: warning: the address of ‘chan’ will always evaluate as ‘true’

find
   if( !chan || chan[0] == '\0' )

change it to
   if( chan == NULL || chan[0] == '\0' )


imc.c: In function ‘imc_process_authentication’:
imc.c:3066:8: warning: the address of ‘rname’ will always evaluate as ‘true’

find
   if( !rname || rname[0] == '\0' )

change it to
   if( rname == NULL || rname[0] == '\0' )


imc.c: In function ‘imc_process_authentication’:
imc.c:3079:11: warning: the address of ‘pw’ will always evaluate as ‘true’

find
      if( !pw || pw[0] == '\0' )

change it to
      if( pw == NULL || pw[0] == '\0' )


imc.c: In function ‘imc_process_authentication’:
imc.c:3122:11: warning: the address of ‘md5’ will always evaluate as ‘true’

find
      if( md5 && md5[0] != '\0' && !strcasecmp( md5, "MD5-SET" ) )

change it to
      if( md5 != NULL && md5[0] != '\0' && !strcasecmp( md5, "MD5-SET" ) )


imc.c: In function ‘imcsetup’:
imc.c:5245:8: warning: the address of ‘imccmd’ will always evaluate as ‘true’
imc.c:5245:40: warning: the address of ‘chan’ will always evaluate as ‘true’

find
   if( !imccmd || imccmd[0] == '\0' || !chan || chan[0] == '\0' )

change it to
   if( imccmd == NULL || imccmd[0] == '\0' || chan == NULL || chan[0] == '\0' )


imc.c: In function ‘imcsetup’:
imc.c:5313:11: warning: the address of ‘arg1’ will always evaluate as ‘true’

find
      if( !arg1 || arg1[0] == '\0' )

change it to
      if( arg1 == NULL || arg1[0] == '\0' )


imc.c: In function ‘imctell’:
imc.c:5705:7: warning: array subscript has type ‘char’

find
      while( isspace( *argument ) )

change it to
      while( isspace( (int)*argument ) )


imc.c: In function ‘imctell’:
imc.c:5721:7: warning: array subscript has type ‘char’

find
      while( isspace( *argument ) )

change it to
      while( isspace( (int)*argument ) )


imc.c: In function ‘imcreply’:
imc.c:5785:7: warning: array subscript has type ‘char’

find
      while( isspace( *argument ) )

change it to
      while( isspace( (int)*argument ) )


imc.c: In function ‘imcreply’:
imc.c:5801:7: warning: array subscript has type ‘char’

find
      while( isspace( *argument ) )

change it to
      while( isspace( (int)*argument ) )


imc.c: In function ‘imcfinger’:
imc.c:5868:8: warning: the address of ‘arg’ will always evaluate as ‘true’

find
   if( !arg || arg[0] == '\0' )

change it to
   if( arg == NULL || arg[0] == '\0' )


imc.c: In function ‘imcconfig’:
imc.c:6227:8: warning: the address of ‘arg1’ will always evaluate as ‘true’

find
   if( !arg1 || arg1[0] == '\0' )

change it to
   if( arg1 == NULL || arg1[0] == '\0' )


imc.c: In function ‘imcignore’:
imc.c:6497:8: warning: the address of ‘arg’ will always evaluate as ‘true’

find
   if( !arg || arg[0] == '\0' )

change it to
   if( arg == NULL || arg[0] == '\0' )


imc.c: In function ‘imcban’:
imc.c:6565:8: warning: the address of ‘arg’ will always evaluate as ‘true’

find
   if( !arg || arg[0] == '\0' )

change it to
   if( arg == NULL || arg[0] == '\0' )


imc.c: In function ‘imc_deny_channel’:
imc.c:6624:8: warning: the address of ‘vic_name’ will always evaluate as ‘true’

find
   if( !vic_name || vic_name[0] == '\0' || !argument || argument[0] == '\0' )

change it to
   if( vic_name == NULL || vic_name[0] == '\0' || !argument || argument[0] == '\0' )


imc.c: In function ‘imcpermset’:
imc.c:6740:8: warning: the address of ‘arg’ will always evaluate as ‘true’

find
   if( !arg || arg[0] == '\0' )

change it to
   if( arg == NULL || arg[0] == '\0' )


imc.c: In function ‘imcremoteadmin’:
imc.c:6897:8: warning: the address of ‘router’ will always evaluate as ‘true’
imc.c:6897:40: warning: the address of ‘cmd’ will always evaluate as ‘true’

find
   if( !router || router[0] == '\0' || !cmd || cmd[0] == '\0' )

change it to
   if( router == NULL || router[0] == '\0' || cmd == NULL || cmd[0] == '\0' )


imc.c: In function ‘imccedit’:
imc.c:7050:8: warning: the address of ‘name’ will always evaluate as ‘true’
imc.c:7050:36: warning: the address of ‘option’ will always evaluate as ‘true’

find
   if( !name || name[0] == '\0' || !option || option[0] == '\0' )

change it to
   if( name == NULL || name[0] == '\0' || option == NULL || option[0] == '\0' )


imc.c: In function ‘imchedit’:
imc.c:7267:8: warning: the address of ‘name’ will always evaluate as ‘true’
imc.c:7267:36: warning: the address of ‘cmd’ will always evaluate as ‘true’

find
   if( !name || name[0] == '\0' || !cmd || cmd[0] == '\0' || !argument || argument[0] == '\0' )

change it to
   if( name == NULL || name[0] == '\0' || cmd == NULL || cmd[0] == '\0' || !argument || argument[0] == '\0' )


imc.c: In function ‘imc_find_social’:
imc.c:7398:4: warning: array subscript has type ‘char’

find
   for( c = sname; *c; *c = tolower( *c ), c++ );

chagne it to
   for( c = sname; *c; *c = tolower( (int)*c ), c++ );


imc.c: In function ‘imc_act_string’:
imc.c:7576:7: warning: array subscript has type ‘char’

find
      else if( should_upper == TRUE && !isspace( *format ) && *format != '$' )

change it to
      else if( should_upper == TRUE && !isspace( (int)*format ) && *format != '$' )


imc.c: In function ‘imc_send_social’:
imc.c:7734:11: warning: the address of ‘socbuf’ will always evaluate as ‘true’
imc.c:7741:11: warning: the address of ‘socbuf’ will always evaluate as ‘true’
imc.c:7748:11: warning: the address of ‘socbuf’ will always evaluate as ‘true’

find
   if( telloption == 0 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 0 ) );
      if( !socbuf || socbuf[0] == '\0' )
         return "";
   }

   if( telloption == 1 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 1 ) );
      if( !socbuf || socbuf[0] == '\0' )
         return "";
   }

   if( telloption == 2 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 2 ) );
      if( !socbuf || socbuf[0] == '\0' )
         return "";
   }

change it to
   if( telloption == 0 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 0 ) );
      if( socbuf == NULL || socbuf[0] == '\0' )
         return "";
   }

   if( telloption == 1 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 1 ) );
      if( socbuf == NULL || socbuf[0] == '\0' )
         return "";
   }

   if( telloption == 2 )
   {
      snprintf( socbuf, LGST, "%s", imc_find_social( ch, arg1, person, mud, 2 ) );
      if( socbuf == NULL || socbuf[0] == '\0' )
         return "";
   }


imc.c: In function ‘imc_command_hook’:
imc.c:8061:10: warning: array subscript has type ‘char’

find
         while( isspace( *argument ) )

change it to
         while( isspace( (int)*argument ) )


imc.c: In function ‘imc_command_hook’:
imc.c:8070:10: warning: array subscript has type ‘char’

find
         while( isspace( *argument ) )

chagne it to
         while( isspace( (int)*argument ) )


That finishes off imc.c and gives a clean compile.
       
Post is unread #22 Aug 3, 2013, 8:01 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

act_comm.c
-----------
act_comm.c: In function ‘drunk_speech’:
act_comm.c:212:10: warning: array subscript has type ‘char’

find
         if( toupper( *arg ) == 'S' )

change it to
         if( toupper( (int)*arg ) == 'S' )


act_comm.c: In function ‘drunk_speech’:
act_comm.c:227:10: warning: array subscript has type ‘char’

find
         if( toupper( *arg ) == 'R' )

change it to
         if( toupper( (int)*arg ) == 'R' )


act_comm.c: In function ‘drunk_speech’:
act_comm.c:237:7: warning: array subscript has type ‘char’

find
      if( toupper( *arg ) == 'T' )

change it to
      if( toupper( (int)*arg ) == 'T' )


act_comm.c: In function ‘drunk_speech’:
act_comm.c:247:7: warning: array subscript has type ‘char’

find
      else if( toupper( *arg ) == 'X' )

change it to
      else if( toupper( (int)*arg ) == 'X' )


act_comm.c: In function ‘drunk_speech’:
act_comm.c:278:10: warning: array subscript has type ‘char’
act_comm.c:279:13: warning: array subscript has type ‘char’
act_comm.c:280:10: warning: array subscript has type ‘char’
act_comm.c:281:13: warning: array subscript has type ‘char’

find
         if( isupper( *txt ) )
            *txt1 = tolower( *txt );
         else if( islower( *txt ) )
            *txt1 = toupper( *txt );

change it to
         if( isupper( (int)*txt ) )
            *txt1 = tolower( (int)*txt );
         else if( islower( (int)*txt ) )
            *txt1 = toupper( (int)*txt );


act_comm.c: In function ‘do_emote’:
act_comm.c:779:4: warning: array subscript has type ‘char’

find
   if( isalpha( plast[-1] ) )

change it to
   if( isalpha( (int)plast[-1] ) )


act_comm.c: In function ‘do_channels’:
act_comm.c:1831:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


act_comm.c: In function ‘do_chat’:
act_comm.c:2404:11: warning: the address of ‘buf’ will always evaluate as ‘true’

find
      if( buf )

change it to
      if( buf != NULL )


act_info.c
-----------
act_info.c: In function ‘show_visible_affects_to_char’:
act_info.c:472:4: warning: array subscript has type ‘char’

find
   name[0] = toupper( name[0] );

change it to
   name[0] = toupper( (int)name[0] );


act_info.c: In function ‘get_help’:
act_info.c:2147:4: warning: array subscript has type ‘char’

find
   if( isdigit( argument[0] ) )

change it to
   if( isdigit( (int)argument[0] ) )


act_info.c: In function ‘do_set_book’:
act_info.c:3473:8: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
   if( arg2 && arg2[0] != '\0' )

change it to
   if( arg2 != NULL && arg2[0] != '\0' )


act_info.c: In function ‘do_set_help’:
act_info.c:3767:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 && arg2[0] != '\0' )

change it to
      if( arg2 != NULL && arg2[0] != '\0' )


act_info.c: In function ‘do_set_help’:
act_info.c:3805:8: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
   if( arg2 && arg2[0] != '\0' )

change it to
   if( arg2 != NULL && arg2[0] != '\0' )


act_move.c
-------------
act_move.c: In function ‘grab_word’:
act_move.c:157:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


act_move.c: In function ‘grab_word’:
act_move.c:175:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


act_wiz.c
--------------
act_wiz.c: In function ‘do_permit’:
act_wiz.c:126:8: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
   if( !arg2 || arg2[0] == '\0' )

change it to
   if( arg2 == NULL|| arg2[0] == '\0' )


act_wiz.c: In function ‘do_invis’:
act_wiz.c:3283:8: warning: the address of ‘arg’ will always evaluate as ‘true’

find
   if( arg && arg[0] != '\0' )

change it to
   if( arg != NULL && arg[0] != '\0' )


act_wiz.c: In function ‘do_loadup’:
act_wiz.c:3602:4: warning: array subscript has type ‘char’

find
   sprintf( fname, "%s%c/%s", PLAYER_DIR, tolower( name[0] ), capitalize( name ) );

change it to
   sprintf( fname, "%s%c/%s", PLAYER_DIR, tolower( (int)name[0] ), capitalize( name ) );


act_wiz.c: In function ‘do_destroy’:
act_wiz.c:4227:4: warning: array subscript has type ‘char’
act_wiz.c:4228:4: warning: array subscript has type ‘char’

find
   sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( arg[0] ), name );
   sprintf( buf2, "%s%c/%s", BACKUP_DIR, tolower( arg[0] ), name );

change it to
   sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( (int)arg[0] ), name );
   sprintf( buf2, "%s%c/%s", BACKUP_DIR, tolower( (int)arg[0] ), name );


act_wiz.c: In function ‘do_pcrename’:
act_wiz.c:5934:4: warning: array subscript has type ‘char’
act_wiz.c:5935:4: warning: array subscript has type ‘char’
act_wiz.c:5936:4: warning: array subscript has type ‘char’

find
   sprintf( newname, "%s%c/%s", PLAYER_DIR, tolower( arg2[0] ), capitalize( arg2 ) );
   sprintf( oldname, "%s%c/%s", PLAYER_DIR, tolower( victim->pcdata->filename[0] ), capitalize( victim->pcdata->filename ) );
   sprintf( backname, "%s%c/%s", BACKUP_DIR, tolower( victim->pcdata->filename[0] ),
            capitalize( victim->pcdata->filename ) );

change it to
   sprintf( newname, "%s%c/%s", PLAYER_DIR, tolower( (int)arg2[0] ), capitalize( arg2 ) );
   sprintf( oldname, "%s%c/%s", PLAYER_DIR, tolower( (int)victim->pcdata->filename[0] ), capitalize( victim->pcdata->filename ) );
   sprintf( backname, "%s%c/%s", BACKUP_DIR, tolower( (int)victim->pcdata->filename[0] ),
            capitalize( victim->pcdata->filename ) );


arena.c
-----------
arena.c: In function ‘arena_update’:
arena.c:1470:66: warning: operation on ‘member’ may be undefined

find
               for( member = arena->first_member; member; member = member = winner )

change it to
               for( member = arena->first_member; member; member = winner )


arena.c: In function ‘do_arena’:
arena.c:3108:5: warning: the address of ‘arg3’ will always evaluate as ‘true’
find
[code]
if( arg3 && arg3 != NULL )

change it to
if( arg3 != NULL && arg3 != NULL )


arena.c:3333:5: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
if( arg2 )

change it to
if( arg2 != NULL )


build.c
----------
build.c: In function ‘copy_buffer’:
build.c:793:11: warning: the address of ‘tmp’ will always evaluate as ‘true’

find
      if( tmp && tmp[len - 1] == '~' )

change it to
      if( tmp != NULL && tmp[len - 1] == '~' )


build.c: In function ‘do_mset’:
build.c:1584:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( !arg3 || arg3[0] == '\0' )

change it to
      if( arg3 == NULL || arg3[0] == '\0' )


build.c: In function ‘do_oset’:
build.c:2710:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' || !argument || argument[0] == 0 )

change it to
      if( arg2 == NULL || arg2[0] == '\0' || !argument || argument[0] == 0 )


build.c: In function ‘do_oset’:
build.c:2830:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( !arg3 || arg3[0] == '\0' )

change it to
      if( arg3 == NULL || arg3[0] == '\0' )


build.c: In function ‘do_oset’:
build.c:2867:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( !arg3 || arg3[0] == '\0' )

change it to
      if( arg3 == NULL || arg3[0] == '\0' )


build.c: In function ‘do_matshop’:
build.c:3135:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 )

change it to
      if( arg2 != NULL )


build.c: In function ‘do_material’:
build.c:3517:14: warning: the address of ‘arg4’ will always evaluate as ‘true’

find
         if( !arg4 || arg4[0] == '\0' || !argument || argument[0] == 0 )

change it to
         if( arg4 == NULL || arg4[0] == '\0' || !argument || argument[0] == 0 )


build.c: In function ‘do_ingredient’:
build.c:3765:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 && !str_cmp( arg2, "name" ) )

change it to
      if( arg2 != NULL && !str_cmp( arg2, "name" ) )


build.c: In function ‘do_ingredient’:
build.c:3825:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 )

change it to
      if( arg2 != NULL )


build.c: In function ‘do_recipe’:
build.c:4000:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 && !str_cmp( arg2, "name" ) )

change it to
      if( arg2 != NULL && !str_cmp( arg2, "name" ) )


build.c: In function ‘do_recipe’:
build.c:4038:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( arg3 && !str_cmp( arg3, "name" ) )

change it to
      if( arg3 != NULL && !str_cmp( arg3, "name" ) )


build.c: In function ‘do_moon’:
build.c:4336:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 )

change it to
      if( arg2 != NULL )


build.c: In function ‘do_species’:
build.c:4575:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 )

change it to
      if( arg2 != NULL )


build.c: In function ‘do_nation’:
build.c:4804:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 )

change it to
      if( arg2 != NULL )


build.c: In function ‘do_redit’:
build.c:5805:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' || !argument || argument[0] == 0 )

change it to
      if( arg2 == NULL || arg2[0] == '\0' || !argument || argument[0] == 0 )


build.c: In function ‘do_redit’:
build.c:6264:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6285:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( !arg3 || arg3[0] == '\0' )

change it to
      if( arg3 == NULL || arg3[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6350:11: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( arg3 && arg3[0] != '\0' )

change it to
      if( arg3 != NULL && arg3[0] != '\0' )


build.c: In function ‘do_redit’:
build.c:6386:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6457:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6491:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6520:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6549:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘do_redit’:
build.c:6578:11: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( !arg2 || arg2[0] == '\0' )

change it to
      if( arg2 == NULL || arg2[0] == '\0' )


build.c: In function ‘edit_buffer’:
build.c:6843:16: warning: array subscript has type ‘char’

find
               if( !isspace( *tptr ) )

change it to
               if( !isspace( (int)*tptr ) )


build.c: In function ‘edit_buffer’:
build.c:6867:16: warning: array subscript has type ‘char’
build.c:6869:16: warning: array subscript has type ‘char’

find
               while( isspace( *sptr ) && *sptr )
                  sptr++;
               while( !isspace( *sptr ) && *sptr )

change it to
               while( isspace( (int)*sptr ) && *sptr )
                  sptr++;
               while( !isspace( (int)*sptr ) && *sptr )


Now there are more in build.c but first got rid of all those basic ones and now to the others (in reverse order to keep line numbers in order since they might change some)
build.c: In function ‘do_recipe’:
build.c:4050:37: warning: operation on ‘pObjIndex’ may be undefined
build.c:4050:37: warning: operation on ‘pObjIndex’ may be undefined

find
               sprintf( buf, "%d: %s + %s = %s\r\n",
                        recipe->number,
                        ( pObjIndex = get_obj_index( recipe->ingred1 ) ) ?
                        pObjIndex->short_descr : "???",
                        ( pObjIndex = get_obj_index( recipe->ingred2 ) ) ?
                        pObjIndex->short_descr : "???",
                        ( pObjIndex = get_obj_index( recipe->result ) ) ? pObjIndex->short_descr : "???" );
               send_to_char( buf, ch );

change it to
               ch_printf( ch, "%d: %s + ", recipe->number, ( pObjIndex = get_obj_index( recipe->ingred1 ) ) ? pObjIndex->short_descr : "???" );
               ch_printf( ch, "%s = ", ( pObjIndex = get_obj_index( recipe->ingred2 ) ) ? pObjIndex->short_descr : "???" );
               ch_printf( ch, "%s\r\n", ( pObjIndex = get_obj_index( recipe->result ) ) ? pObjIndex->short_descr : "???" );


build.c: In function ‘do_recipe’:
build.c:4010:34: warning: operation on ‘pObjIndex’ may be undefined
build.c:4010:34: warning: operation on ‘pObjIndex’ may be undefined

find
            sprintf( buf, "%d: %s + %s = %s\r\n",
                     recipe->number,
                     ( pObjIndex = get_obj_index( recipe->ingred1 ) ) ?
                     pObjIndex->short_descr : "???",
                     ( pObjIndex = get_obj_index( recipe->ingred2 ) ) ?
                     pObjIndex->short_descr : "???",
                     ( pObjIndex = get_obj_index( recipe->result ) ) ? pObjIndex->short_descr : "???" );
            send_to_char( buf, ch );

change it to
            ch_printf( ch, "%d: %s + ", recipe->number, ( pObjIndex = get_obj_index( recipe->ingred1 ) ) ? pObjIndex->short_descr : "???" );
            ch_printf( ch, "%s = ", ( pObjIndex = get_obj_index( recipe->ingred2 ) ) ? pObjIndex->short_descr : "???" );
            ch_printf( ch, "%s\r\n", ( pObjIndex = get_obj_index( recipe->result ) ) ? pObjIndex->short_descr : "???" );


build.c: In function ‘do_material’:
build.c:3382:31: warning: ‘material’ may be used uninitialized in this function

find
      if( !first_material )
      {  /* Ok, get this new material added into the list */
         first_material = new_material;
         last_material = new_material;
         new_material->number = 1;
      }
      else if( first_material->number != 1 )
      {
         first_material->prev = material;
         material->next = first_material;
         material->prev = NULL;
         material->number = 1;
         first_material = material;
      }
      else
      {

change it to
      if( !first_material )
      {  /* Ok, get this new material added into the list */
         first_material = new_material;
         last_material = new_material;
         new_material->number = 1;
      }
      else
      {

The part it was complaining about was inside the else if and material wasn't defined and just the whole thing looked pointless considering as far as i can tell first_material->number should be 1.

bits.c
-----------
bits.c: In function ‘do_qbit’:
bits.c:890:5: warning: the address of ‘buf’ will always evaluate as ‘true’

find
if( !buf || buf[0] == '\0' )

change it to
if( buf == NULL || buf[0] == '\0' )


city.c
---------
city.c: In function ‘do_city’:
city.c:702:5: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
if( arg2 )

change it to
if( arg2 != NULL )


clan.c
-------------
clan.c: In function ‘do_clan’:
clan.c:159:5: warning: the address of ‘arg1’ will always evaluate as ‘true’

find
if( arg1 == NULL || arg1[0] == '\0' )


clan.c: In function ‘do_clan’:
clan.c:225:5: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
if( !arg2 || arg2[0] == '\0' )

change it to
if( arg2 == NULL || arg2[0] == '\0' )


combat.c
--------
combat.c: In function ‘ranged_attack’:
combat.c:770:11: warning: the address of ‘arg1’ will always evaluate as ‘true’

find
      if( !arg1 || arg1[0] == '\0' )

change it to
      if( arg1 == NULL || arg1[0] == '\0' )


comm.c
---------
comm.c: In function ‘read_from_buffer’:
comm.c:1210:7: warning: array subscript has type ‘char’

find
      else if( isascii( d->inbuf[i] ) && isprint( d->inbuf[i] ) )

change it to
      else if( isascii( d->inbuf[i] ) && isprint( (int)d->inbuf[i] ) )


comm.c: In function ‘nanny’:
comm.c:1581:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


comm.c: In function ‘check_parse_name’:
comm.c:2090:10: warning: array subscript has type ‘char’

find
         if( !isalpha( *pc ) && pc[0] != '-' )

change it to
         if( !isalpha( (int)*pc ) && pc[0] != '-' )


comm.c: In function ‘set_pager_input’:
comm.c:3235:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


comm.c: In function ‘pager_output’:
comm.c:3292:4: warning: array subscript has type ‘char’

find
   while( isspace( *last ) )

change it to
   while( isspace( (int)*last ) )


db.c
------------
db.c: In function ‘fread_letter’:
db.c:2978:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


db.c: In function ‘fread_number’:
db.c:3005:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


db.c: In function ‘fread_number’:
db.c:3020:4: warning: array subscript has type ‘char’
db.c:3028:4: warning: array subscript has type ‘char’

find
   if( !isdigit( c ) )
   {
      bug( "Fread_number: bad format. (%c)", c );
      if( fBootDb )
         exit( 1 );
      return 0;
   }

   while( isdigit( c ) )

change it to
   if( !isdigit( (int)c ) )
   {
      bug( "Fread_number: bad format. (%c)", c );
      if( fBootDb )
         exit( 1 );
      return 0;
   }

   while( isdigit( (int)c ) )


db.c: In function ‘fread_string’:
db.c:3099:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


db.c: In function ‘fread_string_nohash’:
db.c:3173:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


db.c: In function ‘fread_line’:
db.c:3280:4: warning: array subscript has type ‘char’

find
   while( isspace( c ) );

change it to
   while( isspace( (int)c ) );


db.c: In function ‘fread_word’:
db.c:3338:4: warning: array subscript has type ‘char’

find
   while( isspace( cEnd ) );

change it to
   while( isspace( (int)cEnd ) );


db.c: In function ‘fread_word’:
db.c:3362:7: warning: array subscript has type ‘char’

find
      if( cEnd == ' ' ? isspace( *pword ) : *pword == cEnd )

change it to
      if( cEnd == ' ' ? isspace( (int)*pword ) : *pword == cEnd )


elkandu.c
-----------
elkandu.c: In function ‘seek_find’:
elkandu.c:3386:10: warning: array subscript has type ‘char’

find
         sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( argument[0] ), name );

change it to
         sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( (int)argument[0] ), name );


elkandu.c: In function ‘ch_change’:
elkandu.c:5855:27: warning: the address of ‘arg1’ will always evaluate as ‘true’

find
         if( !argument || !arg1 )

change it to
         if( !argument || arg1 == NULL )


elkandu.c: In function ‘do_magic’:
elkandu.c:7672:11: warning: the address of ‘arg2’ will always evaluate as ‘true’
elkandu.c:7676:17: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
      if( arg2 && ( action = check_verb( arg2 ) ) == ACT_TRICKS )
      {
         if( power < 10 )
         {
            if( arg2 && ( power = check_power( arg2 ) ) == -1 )

change it to
      if( arg2 != NULL && ( action = check_verb( arg2 ) ) == ACT_TRICKS )
      {
         if( power < 10 )
         {
            if( arg2 != NULL && ( power = check_power( arg2 ) ) == -1 )


elkandu.c: In function ‘do_magic’:
elkandu.c:7712:14: warning: the address of ‘arg2’ will always evaluate as ‘true’

find
         if( arg2 && ( power = check_power( arg2 ) ) == -1 )

change it to
         if( arg2 != NULL && ( power = check_power( arg2 ) ) == -1 )


elkandu.c: In function ‘do_magic’:
elkandu.c:7748:11: warning: the address of ‘arg3’ will always evaluate as ‘true’
elkandu.c:7752:17: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
      if( arg3 && ( power = check_power( arg3 ) ) == -1 )
      {
         if( action == ACT_TRICKS )
         {
            if( arg3 && ( action = check_verb( arg3 ) ) == ACT_TRICKS )

change it to
      if( arg3 != NULL && ( power = check_power( arg3 ) ) == -1 )
      {
         if( action == ACT_TRICKS )
         {
            if( arg3 != NULL && ( action = check_verb( arg3 ) ) == ACT_TRICKS )


elkandu.c: In function ‘do_magic’:
elkandu.c:7785:14: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
         if( arg3 && ( action = check_verb( arg3 ) ) == ACT_TRICKS )

change it to
         if( arg3 != NULL && ( action = check_verb( arg3 ) ) == ACT_TRICKS )


elkandu.c: In function ‘do_magic’:
elkandu.c:7978:19: warning: the address of ‘arg4’ will always evaluate as ‘true’

find
         else if( !arg4 || arg4[0] == '\0' )

change it to
         else if( arg4 == NULL || arg4[0] == '\0' )


elkandu.c: In function ‘obj_move’:
elkandu.c:3902:23: warning: ‘victim’ may be used uninitialized in this function

at the top of the function
find
   CHAR_DATA *victim;

remove that line then
find
         if( IS_OBJ_STAT( obj, ITEM_DREAMWORLD )   /* Thanks Smokey */
             || IS_OBJ_STAT( obj, ITEM_ARTIFACT )  /* Thanks Waffle */
             || victim->carry_weight + get_obj_weight( obj ) > can_carry_w( target ) )

change it to
         if( IS_OBJ_STAT( obj, ITEM_DREAMWORLD )   /* Thanks Smokey */
             || IS_OBJ_STAT( obj, ITEM_ARTIFACT )  /* Thanks Waffle */
             || target->carry_weight + get_obj_weight( obj ) > can_carry_w( target ) )


fight.c
--------
fight.c: In function ‘multi_hit’:
fight.c:864:1: warning: ‘retcode’ may be used uninitialized in this function

at the top of the function find
ch_ret retcode;

remove that line and then
find
return retcode;

change it to
return rNONE;

       
Post is unread #23 Aug 3, 2013, 9:26 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

grub.c
------------
grub.c: In function ‘go_parse_operator’:
grub.c:952:7: warning: array subscript has type ‘char’

find
      if( isdigit( *pch ) )   /* user entered number */

change it to
      if( isdigit( (int)*pch ) )   /* user entered number */


grub.c: In function ‘do_ogrub’:
grub.c:1397:4: warning: array subscript has type ‘char’

find
   if( isdigit( *arg1 ) )  /* first arg is number of display lines   */

change it to
   if( isdigit( (int)*arg1 ) )  /* first arg is number of display lines   */


grub.c: In function ‘do_grub’:
grub.c:1759:4: warning: array subscript has type ‘char’

find
   if( isdigit( *arg1 ) )  /* first argument is number of display lines */

change it to
   if( isdigit( (int)*arg1 ) )  /* first argument is number of display lines */


grub.c: In function ‘do_diagnose’:
grub.c:2201:11: warning: array subscript has type ‘char’
grub.c:2201:11: warning: array subscript has type ‘char’
grub.c:2201:11: warning: array subscript has type ‘char’
grub.c:2201:11: warning: array subscript has type ‘char’
grub.c:2201:11: warning: array subscript has type ‘char’

find
      if( !*arg2 || !*arg3 || !*arg4 || !*arg5 || !*arg6
          || !isdigit( *arg2 ) || !isdigit( *arg3 ) || !isdigit( *arg4 ) || !isdigit( *arg5 ) || !isdigit( *arg6 ) )

change it to
      if( !*arg2 || !*arg3 || !*arg4 || !*arg5 || !*arg6
          || !isdigit( (int)*arg2 ) || !isdigit( (int)*arg3 ) || !isdigit( (int)*arg4 ) || (int)!isdigit( *arg5 ) || (int)!isdigit( *arg6 ) )


highscores.c
------------
hiscores.c: In function ‘show_hiscore’:
hiscores.c:324:8: warning: ‘len’ may be used uninitialized in this function

find
   len = ( 39 - len );

change it to
   len = 39;


interp.c
-----------
interp.c: In function ‘interpret’:
interp.c:207:7: warning: array subscript has type ‘char’

find
      while( isspace( *argument ) )

change it to
      while( isspace( (int)*argument ) )


interp.c: In function ‘interpret’:
interp.c:227:7: warning: array subscript has type ‘char’
interp.c:227:7: warning: array subscript has type ‘char’
interp.c:232:10: warning: array subscript has type ‘char’

find
      if( !isalpha( argument[0] ) && !isdigit( argument[0] ) )
      {
         command[0] = argument[0];
         command[1] = '\0';
         argument++;
         while( isspace( *argument ) )
            argument++;

change it to
      if( !isalpha( (int)argument[0] ) && !isdigit( (int)argument[0] ) )
      {
         command[0] = argument[0];
         command[1] = '\0';
         argument++;
         while( isspace( (int)*argument ) )
            argument++;


interp.c: In function ‘check_social’:
interp.c:583:11: warning: the address of ‘adj’ will always evaluate as ‘true’

find
      if( adj && adj[0] != '\0' )

change it to
      if( adj != NULL && adj[0] != '\0' )


interp.c: In function ‘check_social’:
interp.c:602:11: warning: the address of ‘adj’ will always evaluate as ‘true’

find
      if( adj && adj[0] != '\0' )

change it to
      if( adj != NULL && adj[0] != '\0' )


interp.c: In function ‘is_number’:
interp.c:839:7: warning: array subscript has type ‘char’

find
      if( !isdigit( *arg ) )

change it to
      if( !isdigit( (int)*arg ) )


interp.c: In function ‘one_argument’:
interp.c:883:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


interp.c: In function ‘one_argument’:
interp.c:903:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


interp.c: In function ‘one_argument2’:
interp.c:920:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


interp.c: In function ‘one_argument2’:
interp.c:940:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


interp.c: In function ‘one_argument_retain_case’:
interp.c:957:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


interp.c: In function ‘one_argument_retain_case’:
interp.c:977:4: warning: array subscript has type ‘char’

find
   while( isspace( *argument ) )

change it to
   while( isspace( (int)*argument ) )


magic.c
---------
magic.c: In function ‘rd_parse’:
magic.c:918:1: warning: array subscript has type ‘char’

find
if( len == 1 && isalpha( exp[0] ) )

change it to
if( len == 1 && isalpha( (int)exp[0] ) )


magic.c: In function ‘rd_parse’:
magic.c:972:1: warning: array subscript has type ‘char’
magic.c:972:1: warning: array subscript has type ‘char’

find
if( !isdigit( exp[x] ) && !isspace( exp[x] ) )

change it to
if( !isdigit( (int)exp[x] ) && !isspace( (int)exp[x] ) )


mpxset.c
----------
mpxset.c: In function ‘do_mpmset’:
mpxset.c:741:5: warning: the address of ‘arg3’ will always evaluate as ‘true’

find
if( !arg3 || arg3[0] == '\0' )

change it to
if( arg3 == NULL || arg3[0] == '\0' )


mud_comm.c
----------
mud_comm.c: In function ‘do_mpinvis’:
mud_comm.c:1204:5: warning: the address of ‘arg’ will always evaluate as ‘true’

find
if( arg && arg[0] != '\0' )

change it to
if( arg != NULL && arg[0] != '\0' )


mud_comm.c: In function ‘do_mppeace’:
mud_comm.c:2822:18: warning: ‘victim’ may be used uninitialized in this function

find
victim->last_hit = NULL;

remove that line

mud_prog.c
-----------
mud_prog.c: In function ‘mprog_do_ifcheck’:
mud_prog.c:395:1: warning: array subscript has type ‘char’

find
while( *point != ' ' && !isalnum( *point ) )

change it to
while( *point != ' ' && !isalnum( (int)*point ) )


reset.c
--------
reset.c: In function ‘sprint_reset’:
reset.c:85:13: warning: value computed is not used

find
            *num++;

change it to
            (*num)++;


reset.c: In function ‘sprint_reset’:
reset.c:115:19: warning: value computed is not used

find
                  *num++;

change it to
                  (*num)++;


reset.c: In function ‘sprint_reset’:
reset.c:154:13: warning: value computed is not used

find
            *num++;

change it to
            (*num)++;


save.c
-------
save.c: In function ‘save_char_obj’:
save.c:169:4: warning: array subscript has type ‘char’

find
   sprintf( strsave, "%s%c/%s", PLAYER_DIR, tolower( ch->pcdata->filename[0] ), capitalize( ch->pcdata->filename ) );

change it to
   sprintf( strsave, "%s%c/%s", PLAYER_DIR, tolower( (int)ch->pcdata->filename[0] ), capitalize( ch->pcdata->filename ) );


save.c: In function ‘save_char_obj’:
save.c:182:7: warning: array subscript has type ‘char’

find
      sprintf( strback, "%s%c/%s", BACKUP_DIR, tolower( ch->pcdata->filename[0] ), capitalize( ch->pcdata->filename ) );

change it to
      sprintf( strback, "%s%c/%s", BACKUP_DIR, tolower( (int)ch->pcdata->filename[0] ), capitalize( ch->pcdata->filename ) );


save.c: In function ‘fwrite_obj’:
save.c:604:4: warning: suggest parentheses around comparison in operand of ‘==’
save.c:606:4: warning: suggest parentheses around comparison in operand of ‘==’
save.c:608:4: warning: suggest parentheses around comparison in operand of ‘==’
save.c:612:4: warning: suggest parentheses around comparison in operand of ‘==’

find
   if( QUICKMATCH( obj->name, obj->pIndexData->name ) == 0 )
      fprintf( fp, "Name         %s~\n", obj->name );
   if( QUICKMATCH( obj->short_descr, obj->pIndexData->short_descr ) == 0 )
      fprintf( fp, "ShortDescr   %s~\n", obj->short_descr );
   if( QUICKMATCH( obj->description, obj->pIndexData->description ) == 0 )
      fprintf( fp, "Description  %s~\n", obj->description );
   if( obj->obj_by != NULL )
      fprintf( fp, "ObjBy	%s~\n", obj->obj_by );
   if( QUICKMATCH( obj->action_desc, obj->pIndexData->action_desc ) == 0 )
      fprintf( fp, "ActionDesc   %s~\n", obj->action_desc );

change it to
   if( ( QUICKMATCH( obj->name, obj->pIndexData->name ) ) == 0 )
      fprintf( fp, "Name         %s~\n", obj->name );
   if( ( QUICKMATCH( obj->short_descr, obj->pIndexData->short_descr ) ) == 0 )
      fprintf( fp, "ShortDescr   %s~\n", obj->short_descr );
   if( (  QUICKMATCH( obj->description, obj->pIndexData->description ) ) == 0 )
      fprintf( fp, "Description  %s~\n", obj->description );
   if( obj->obj_by != NULL )
      fprintf( fp, "ObjBy	%s~\n", obj->obj_by );
   if( ( QUICKMATCH( obj->action_desc, obj->pIndexData->action_desc ) ) == 0 )
      fprintf( fp, "ActionDesc   %s~\n", obj->action_desc );


save.c: In function ‘load_char_obj’:
save.c:838:4: warning: array subscript has type ‘char’
save.c:843:10: warning: array subscript has type ‘char’

find
   sprintf( strsave, "%s%c/%s", PLAYER_DIR, tolower( name[0] ), capitalize( name ) );
   if( stat( strsave, &fst ) != -1 )
   {
      if( fst.st_size == 0 )
      {
         sprintf( strsave, "%s%c/%s", BACKUP_DIR, tolower( name[0] ), capitalize( name ) );

change it to
   sprintf( strsave, "%s%c/%s", PLAYER_DIR, tolower( (int)name[0] ), capitalize( name ) );
   if( stat( strsave, &fst ) != -1 )
   {
      if( fst.st_size == 0 )
      {
         sprintf( strsave, "%s%c/%s", BACKUP_DIR, tolower( (int)name[0] ), capitalize( name ) );


save.c: In function ‘fread_char’:
save.c:1711:16: warning: array subscript has type ‘char’
save.c:1711:16: warning: array subscript has type ‘char’

find
               if( isalpha( ch->pcdata->title[0] ) || isdigit( ch->pcdata->title[0] ) )

change it to
               if( isalpha( (int)ch->pcdata->title[0] ) || isdigit( (int)ch->pcdata->title[0] ) )


save.c: In function ‘do_last’:
save.c:2278:4: warning: array subscript has type ‘char’

find
   sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( arg[0] ), name );

change it to
   sprintf( buf, "%s%c/%s", PLAYER_DIR, tolower( (int)arg[0] ), name );


save.c: In function ‘fwrite_mobile’:
save.c:2377:4: warning: suggest parentheses around comparison in operand of ‘==’
save.c:2379:4: warning: suggest parentheses around comparison in operand of ‘==’
save.c:2381:4: warning: suggest parentheses around comparison in operand of ‘==’

find
   if( QUICKMATCH( mob->name, mob->pIndexData->player_name ) == 0 )
      fprintf( fp, "Name     %s~\n", mob->name );
   if( QUICKMATCH( mob->short_descr, mob->pIndexData->short_descr ) == 0 )
      fprintf( fp, "Short	%s~\n", mob->short_descr );
   if( QUICKMATCH( mob->description, mob->pIndexData->description ) == 0 )
      fprintf( fp, "Description %s~\n", mob->description );

change it to
   if( ( QUICKMATCH( mob->name, mob->pIndexData->player_name ) ) == 0 )
      fprintf( fp, "Name     %s~\n", mob->name );
   if( ( QUICKMATCH( mob->short_descr, mob->pIndexData->short_descr ) ) == 0 )
      fprintf( fp, "Short	%s~\n", mob->short_descr );
   if( ( QUICKMATCH( mob->description, mob->pIndexData->description ) ) == 0 )
      fprintf( fp, "Description %s~\n", mob->description );


talent.c
--------
talent.c: In function ‘do_tradein’:
talent.c:122:5: warning: the address of ‘arg’ will always evaluate as ‘true’

find
if( !arg || arg[0] == '\0' )

change it to
if( arg == NULL || arg[0] == '\0' )


talent.c: In function ‘do_tradein’:
talent.c:134:1: warning: array subscript has type ‘char’
talent.c:134:1: warning: array subscript has type ‘char’
talent.c:141:13: warning: the address of ‘arg’ will always evaluate as ‘true’

find
if( toupper( arg[0] ) == toupper( talent->name[0] ) 
 &&!str_prefix( arg, talent->name ) )
         
break;
   
}
   
if( !talent && arg && arg[0] != '\0' )

change it to
if( toupper( (int)arg[0] ) == toupper( (int)talent->name[0] ) 
 &&!str_prefix( arg, talent->name ) )
         
break;
   
}
   
if( !talent && arg != NULL && arg[0] != '\0' )


update.c
---------
update.c: In function ‘move_gain’:
update.c:453:6: warning: ‘gain’ may be used uninitialized in this function

at the top of that function
find
int gain;

change it to
int gain = 0;

Well after that I get no warnings or errors :)
       
Post is unread #24 Aug 4, 2013, 8:01 am
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

Wow thanks for that


I wasn't expecting all of that so thank you very much I will get started on all of that right away
       
Post is unread #25 Aug 4, 2013, 10:49 am
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

Hmm I seem to still get a few warnings even after making the changes


here they are


act_info.c: In function âformat_obj_to_charâ:
act_info.c:127: warning: format not a string literal and no format arguments
act_info.c:148: warning: format not a string literal and no format arguments



 Now compiling... o/combat.o
combat.c: In function âcheck_hitâ:
combat.c:536: warning: format not a string literal and no format arguments


 Now compiling... o/comm.o
comm.c: In function ânew_descriptorâ:
comm.c:845: warning: pointer targets in passing argument 3 of âacceptâ differ in signedness
/usr/include/sys/socket.h:214: note: expected âsocklen_t * __restrict__â but argument is of type âint *â
comm.c: In function âdisplay_promptâ:
comm.c:3108: warning: format not a string literal and no format arguments


Now compiling... o/fight.o
fight.c: In function âviolence_updateâ:
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size
fight.c:376: warning: cast from pointer to integer of different size
fight.c:376: warning: cast from pointer to integer of different size
fight.c:376: warning: cast from pointer to integer of different size


Now compiling... o/handler.o
handler.c: In function âgroup_objectâ:
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size



 Now compiling... o/hashstr.o
hashstr.c: In function âhash_dumpâ:
hashstr.c:258: warning: cast from pointer to integer of different size
hashstr.c:258: warning: cast to pointer from integer of different size
hashstr.c: In function âshow_high_hashâ:
hashstr.c:375: warning: cast from pointer to integer of different size
hashstr.c:375: warning: cast to pointer from integer of different size



 Now compiling... o/makeobjs.o
makeobjs.c: In function âgenerate_mobâ:
makeobjs.c:632: warning: format not a string literal and no format arguments



 Now compiling... o/save.o
save.c: In function âfwrite_objâ:
save.c:604: warning: cast from pointer to integer of different size
save.c:604: warning: cast from pointer to integer of different size
save.c:606: warning: cast from pointer to integer of different size
save.c:606: warning: cast from pointer to integer of different size
save.c:608: warning: cast from pointer to integer of different size
save.c:608: warning: cast from pointer to integer of different size
save.c:612: warning: cast from pointer to integer of different size
save.c:612: warning: cast from pointer to integer of different size
save.c: In function âfwrite_mobileâ:
save.c:2377: warning: cast from pointer to integer of different size
save.c:2377: warning: cast from pointer to integer of different size
save.c:2379: warning: cast from pointer to integer of different size
save.c:2379: warning: cast from pointer to integer of different size
save.c:2381: warning: cast from pointer to integer of different size
save.c:2381: warning: cast from pointer to integer of different size




       
Post is unread #26 Aug 4, 2013, 12:09 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

what do you have for like save.c line 604? is it
   if( ( QUICKMATCH( obj->name, obj->pIndexData->name ) ) == 0 )

all the correct placement etc...?
       
Post is unread #27 Aug 4, 2013, 12:26 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

 Now compiling... o/makeobjs.o
makeobjs.c: In function âgenerate_mobâ:
makeobjs.c:632: warning: format not a string literal and no format arguments

find
   sprintf( buf, nation->name );

change it to
   snprintf( buf, sizeof( buf ), "%s", nation->name );


comm.c: In function âdisplay_promptâ:
comm.c:3108: warning: format not a string literal and no format arguments

find
                     sprintf( pbuf, ch->nation->name );

change it to
                     snprintf( pbuf, sizeof( pbuf ), "%s", ch->nation->name );


combat.c: In function âcheck_hitâ:
combat.c:536: warning: format not a string literal and no format arguments

find
   sprintf( buf, part_locs[part->loc] );

change it to
   snprintf( buf, sizeof( buf ), "%s", part_locs[part->loc] );


act_info.c: In function âformat_obj_to_charâ:
act_info.c:127: warning: format not a string literal and no format arguments

find
      sprintf( buf, aoran( buf ) );

change it to
      snprintf( buf, sizeof( buf ), "%s", aoran( buf ) );


act_info.c: In function âformat_obj_to_charâ:
act_info.c:148: warning: format not a string literal and no format arguments

find
      sprintf( buf, capitalize( aoran( buf ) ) );

change it to
      snprintf( buf, sizeof( buf ), "%s", capitalize( aoran( buf ) ) );

thats the ones that aren't in the QUICKMATCH. but let me know what you have on like save.c line 604 and what both the QUICKMATCH defines look like in mud.h when you get time.
       
Post is unread #28 Aug 4, 2013, 12:29 pm
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

yes that is what I have just triple checked it


and I double checked all the others and I have those correct as well.


I even downloaded another copy of it and tried it with the save.c file and I get the same errors
       
Post is unread #29 Aug 4, 2013, 12:32 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

well gave the fix for some. now to figure out what the issue is in the other :) your compiler just complains about stuff mine isn't lol
       
Post is unread #30 Aug 4, 2013, 1:36 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

fight.c: In function âviolence_updateâ:
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size
fight.c:367: warning: cast from pointer to integer of different size

find
sprintf( buf, "ch: %d  ch->in_room: %d  ch->prev: %d  ch->next: %d", 
                   ( int )ch, ( int )ch->in_room, ( int )ch->prev, ( int )ch->next );

change it to
sprintf( buf, "ch: %p  ch->in_room: %p  ch->prev: %p  ch->next: %p", 
                   ch, ch->in_room, ch->prev, ch->next );


fight.c: In function âviolence_updateâ:
fight.c:376: warning: cast from pointer to integer of different size
fight.c:376: warning: cast from pointer to integer of different size
fight.c:376: warning: cast from pointer to integer of different size

find
sprintf( buf, "lst_ch: %d  lst_ch->prev: %d  lst_ch->next: %d", 
                      ( int )lst_ch, ( int )lst_ch->prev, ( int )lst_ch->next );

change it to
sprintf( buf, "lst_ch: %p  lst_ch->prev: %p  lst_ch->next: %p", 
                      lst_ch, lst_ch->prev, lst_ch->next );


handler.c: In function âgroup_objectâ:
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
handler.c:4465: warning: cast from pointer to integer of different size
save.c: In function âfwrite_objâ:
save.c:604: warning: cast from pointer to integer of different size
save.c:604: warning: cast from pointer to integer of different size
save.c:606: warning: cast from pointer to integer of different size
save.c:606: warning: cast from pointer to integer of different size
save.c:608: warning: cast from pointer to integer of different size
save.c:608: warning: cast from pointer to integer of different size
save.c:612: warning: cast from pointer to integer of different size
save.c:612: warning: cast from pointer to integer of different size
save.c: In function âfwrite_mobileâ:
save.c:2377: warning: cast from pointer to integer of different size
save.c:2377: warning: cast from pointer to integer of different size
save.c:2379: warning: cast from pointer to integer of different size
save.c:2379: warning: cast from pointer to integer of different size
save.c:2381: warning: cast from pointer to integer of different size
save.c:2381: warning: cast from pointer to integer of different size

in mud.h find
find
#define QUICKMATCH(p1, p2)	(int) (p1) == (int) (p2)

change it to
#define QUICKMATCH(p1, p2)	( (p1) == (p2) )

that should take care of quite a bit, just let me know which ones you still have.
       
Post is unread #31 Aug 4, 2013, 2:10 pm   Last edited Aug 4, 2013, 2:14 pm by mystickdreamer
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

I'm still working on putting these in, but i was wondering if you wouldn't mind letting me know why my compiler was complaining about the ones in fight (the only one I have changed so far)



No I have


  Now compiling... o/act_info.o
act_info.c: In function âformat_obj_to_charâ:
act_info.c:127: warning: format not a string literal and no format arguments
act_info.c:148: warning: format not a string literal and no format arguments


Now compiling... o/combat.o
combat.c: In function âcheck_hitâ:
combat.c:536: warning: format not a string literal and no format arguments


Now compiling... o/comm.o
comm.c: In function ânew_descriptorâ:
comm.c:845: warning: pointer targets in passing argument 3 of âacceptâ differ in signedness
/usr/include/sys/socket.h:214: note: expected âsocklen_t * __restrict__â but argument is of type âint *â
comm.c: In function âdisplay_promptâ:
comm.c:3108: warning: format not a string literal and no format arguments



  Now compiling... o/hashstr.o
hashstr.c: In function âhash_dumpâ:
hashstr.c:258: warning: cast from pointer to integer of different size
hashstr.c:258: warning: cast to pointer from integer of different size
hashstr.c: In function âshow_high_hashâ:
hashstr.c:375: warning: cast from pointer to integer of different size
hashstr.c:375: warning: cast to pointer from integer of different size


  Now compiling... o/makeobjs.o
makeobjs.c: In function âgenerate_mobâ:
makeobjs.c:632: warning: format not a string literal and no format arguments
       
Post is unread #32 Aug 4, 2013, 2:34 pm   Last edited Aug 4, 2013, 2:45 pm by mystickdreamer
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

actually looks like I found another crash bug

I was building and I made a mob and then made a shop so the mob could sell things

then I invoked an item to give to the mob and when I gave them the item the mud crashed and caused a segmentation fault


Program terminated with signal 11, Segmentation fault.
#0  0x0000000000505678 in obj_to_char (obj=0x25f1ba0, ch=0x0) at handler.c:1640
1640          for( otmp = ch->first_carrying; otmp; otmp = otmp->next_content )
(gdb) bt
#0  0x0000000000505678 in obj_to_char (obj=0x25f1ba0, ch=0x0) at handler.c:1640
#1  0x00000000005594a5 in fread_obj (ch=0x0, fp=0x2584e70, os_type=2) at save.c:2008
#2  0x000000000055b5ee in load_world (ch=0x0) at save.c:2740
#3  0x00000000004bd63e in boot_db () at db.c:614
#4  0x00000000004b1a5f in main (argc=2, argv=0x7fff4830c138) at comm.c:297
(gdb) list
1635                   break;
1636                }
1637       }
1638
1639       if( !skipgroup )
1640          for( otmp = ch->first_carrying; otmp; otmp = otmp->next_content )
1641             if( ( oret = group_object( otmp, obj ) ) == otmp )
1642             {
1643                grouped = TRUE;
1644                break;
(gdb) up
#1  0x00000000005594a5 in fread_obj (ch=0x0, fp=0x2584e70, os_type=2) at save.c:2008
2008                         obj = obj_to_char( obj, ch );
(gdb) list
2003                                  break;
2004                               }
2005                            if( x == MAX_LAYERS )
2006                               bug( "Fread_obj: too many layers %d", wear_loc );
2007                         }
2008                         obj = obj_to_char( obj, ch );
2009                         if( reslot && slot != -1 )
2010                            save_equipment[wear_loc][slot] = obj;
2011                      }
2012                      else
(gdb) up
#2  0x000000000055b5ee in load_world (ch=0x0) at save.c:2740
2740                   fread_obj( NULL, objfp, OS_GROUND );
(gdb) list
2735                done++;
2736             else
2737             {
2738                word = fread_word( objfp );
2739                if( str_cmp( word, "#END" ) )
2740                   fread_obj( NULL, objfp, OS_GROUND );
2741                else
2742                   done++;
2743             }
2744
(gdb) up
#3  0x00000000004bd63e in boot_db () at db.c:614
614           load_world( NULL );
(gdb) list
609           log_string( "Initializing economy" );
610           initialize_economy(  );
611           log_string( "Loading materials" );
612           load_materials(  );
613           log_string( "Loading world" );
614           load_world( NULL );
615           log_string( "Loading deities" );
616           load_deity(  );
617           log_string( "Loading bans" );
618           load_banlist(  );
(gdb) up
#4  0x00000000004b1a5f in main (argc=2, argv=0x7fff4830c138) at comm.c:297
297        boot_db(  );
(gdb) list
292           signal( SIGTERM, ( void * )bailout );
293        }
294     #endif /* WIN32 */
295
296        log_string( "Booting Database" );
297        boot_db(  );
298        log_string( "Initializing socket" );
299        if( !fCopyOver )  /* We have already the port if copyover'ed */
300           control = init_socket( port );
301
(gdb) up
Initial frame selected; you cannot go up.




Looking back through my logs in retrospect I did forget to remove the prototype flag from the item before giving it to the mob.
       
Post is unread #33 Aug 4, 2013, 3:00 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

hmm interesting that it has ch as 0x0, and it looks like that crash is while loading, see if it is easy to make happen when doing it :)
       
Post is unread #34 Aug 4, 2013, 3:04 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

the pointers on your server are of a different size than an int, so it complains.
       
Post is unread #35 Aug 4, 2013, 4:12 pm
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

Now when I try and start the mud with ./rmstart &

what I get is

~/cm3/src $ Segmentation fault (core dumped)
mail: illegal option -- s
sendmail: usage: sendmail [ -t ] [ -fsender ] [ -Fname ] [ -bp ] [ -bs ] [ arg ... ]
Segmentation fault (core dumped)
       
Post is unread #36 Aug 4, 2013, 4:28 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

what does the core file show
       
Post is unread #37 Aug 4, 2013, 4:36 pm
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

Program terminated with signal 11, Segmentation fault.
#0  0x0000000000505678 in obj_to_char (obj=0xb4eb70, ch=0x0) at handler.c:1640
1640          for( otmp = ch->first_carrying; otmp; otmp = otmp->next_content )
(gdb) bt
#0  0x0000000000505678 in obj_to_char (obj=0xb4eb70, ch=0x0) at handler.c:1640
#1  0x00000000005594a5 in fread_obj (ch=0x0, fp=0xae1e70, os_type=2) at save.c:2008
#2  0x000000000055b5ee in load_world (ch=0x0) at save.c:2740
#3  0x00000000004bd63e in boot_db () at db.c:614
#4  0x00000000004b1a5f in main (argc=2, argv=0x7fff219731c8) at comm.c:297
(gdb) list
1635                   break;
1636                }
1637       }
1638
1639       if( !skipgroup )
1640          for( otmp = ch->first_carrying; otmp; otmp = otmp->next_content )
1641             if( ( oret = group_object( otmp, obj ) ) == otmp )
1642             {
1643                grouped = TRUE;
1644                break;
(gdb) up
#1  0x00000000005594a5 in fread_obj (ch=0x0, fp=0xae1e70, os_type=2) at save.c:2008
2008                         obj = obj_to_char( obj, ch );
(gdb) list
2003                                  break;
2004                               }
2005                            if( x == MAX_LAYERS )
2006                               bug( "Fread_obj: too many layers %d", wear_loc );
2007                         }
2008                         obj = obj_to_char( obj, ch );
2009                         if( reslot && slot != -1 )
2010                            save_equipment[wear_loc][slot] = obj;
2011                      }
2012                      else
(gdb) up
#2  0x000000000055b5ee in load_world (ch=0x0) at save.c:2740
2740                   fread_obj( NULL, objfp, OS_GROUND );
(gdb) list
2735                done++;
2736             else
2737             {
2738                word = fread_word( objfp );
2739                if( str_cmp( word, "#END" ) )
2740                   fread_obj( NULL, objfp, OS_GROUND );
2741                else
2742                   done++;
2743             }
2744
(gdb) up
#3  0x00000000004bd63e in boot_db () at db.c:614
614           load_world( NULL );
(gdb) list
609           log_string( "Initializing economy" );
610           initialize_economy(  );
611           log_string( "Loading materials" );
612           load_materials(  );
613           log_string( "Loading world" );
614           load_world( NULL );
615           log_string( "Loading deities" );
616           load_deity(  );
617           log_string( "Loading bans" );
618           load_banlist(  );
(gdb) up
#4  0x00000000004b1a5f in main (argc=2, argv=0x7fff219731c8) at comm.c:297
297        boot_db(  );
(gdb) list
292           signal( SIGTERM, ( void * )bailout );
293        }
294     #endif /* WIN32 */
295
296        log_string( "Booting Database" );
297        boot_db(  );
298        log_string( "Initializing socket" );
299        if( !fCopyOver )  /* We have already the port if copyover'ed */
300           control = init_socket( port );
301
(gdb) up
Initial frame selected; you cannot go up.
       
Post is unread #38 Aug 4, 2013, 4:52 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

act_info.c: In function âformat_obj_to_charâ:
act_info.c:127: warning: format not a string literal and no format arguments
act_info.c:148: warning: format not a string literal and no format arguments
combat.c: In function âcheck_hitâ:
combat.c:536: warning: format not a string literal and no format arguments
comm.c: In function âdisplay_promptâ:
comm.c:3108: warning: format not a string literal and no format arguments
makeobjs.c: In function âgenerate_mobâ:
makeobjs.c:632: warning: format not a string literal and no format arguments

covered those a few post ago.

comm.c: In function ânew_descriptorâ:
comm.c:845: warning: pointer targets in passing argument 3 of âacceptâ differ in signedness
/usr/include/sys/socket.h:214: note: expected âsocklen_t * __restrict__â but argument is of type âint *â

hashstr.c: In function âhash_dumpâ:
hashstr.c:258: warning: cast from pointer to integer of different size
hashstr.c:258: warning: cast to pointer from integer of different size
hashstr.c: In function âshow_high_hashâ:
hashstr.c:375: warning: cast from pointer to integer of different size
hashstr.c:375: warning: cast to pointer from integer of different size

So that leaves us with these...

Ill figure these out sometime, if anyone has any clue though by all means lol

on to the issue with the crash, while in the core type "frame 1" and type "print obj->pIndexData->vnum"
       
Post is unread #39 Aug 4, 2013, 4:56 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,858
JoinedJul 26, 2005

and while there type "print room->vnum"
       
Post is unread #40 Aug 4, 2013, 5:00 pm
Go to the top of the page
Go to the bottom of the page

mystickdreamer
Magician
GroupMembers
Posts128
JoinedApr 9, 2010

(gdb) frame 1
#1  0x00000000005594a5 in fread_obj (ch=0x0, fp=0xae1e70, os_type=2) at save.c:2008
2008                         obj = obj_to_char( obj, ch );
(gdb) print obj->pIndexData->vnum
$1 = 20013
(gdb)



I'll look back over the posts for the errors....it's quite possible I missed something.

       
Pages:<< prev 1, 2, 3, 4, 5 ... next >>