Subversion Repositories svn1-original

Rev

Rev 31 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 31 Rev 45
Line 417... Line 417...
417
            {
417
            {
418
                if ( t_parse_text( &linep, line_text ) )
418
                if ( t_parse_text( &linep, line_text ) )
419
                {
419
                {
420
                    strncpy (team_buf.members[i].name,line_text,MAX_PERSON_NAME);
420
                    strncpy (team_buf.members[i].name,line_text,MAX_PERSON_NAME);
421
                }
421
                }
-
 
422
 
-
 
423
                int age;
-
 
424
                if ( t_parse_number( &linep, &age ) )
-
 
425
                {
-
 
426
                    team_buf.members[i].age = age;
-
 
427
                }
422
            }
428
            }
423
 
429
 
424
            put_team_record( team, &team_buf );
430
            put_team_record( team, &team_buf );
425
        }
431
        }
426
 
432
 
Line 460... Line 466...
460
 *      This helper function is called to Parse line of team text
466
 *      This helper function is called to Parse line of team text
461
 *
467
 *
462
 *  Parameters:
468
 *  Parameters:
463
 *      linep           Current input source pointer
469
 *      linep           Current input source pointer
464
 *                      Will be updated to point to end of the field
470
 *                      Will be updated to point to end of the field
-
 
471
 *                      If the field is a valid number
465
 *      number          Number extracted
472
 *      number          Number extracted
466
 *
473
 *
467
 *  Returns:
474
 *  Returns:
468
 *      TRUE - Number extracted OK
475
 *      TRUE - Number extracted OK
469
 *      FALSE - No number extracted
476
 *      FALSE - No number extracted
Line 471... Line 478...
471
 *========================================================================*/
478
 *========================================================================*/
472
 
479
 
473
bool t_parse_number( char **linep, int *number )
480
bool t_parse_number( char **linep, int *number )
474
{
481
{
475
    long    lnumber;
482
    long    lnumber;
-
 
483
    char    *work = *linep;
476
 
484
 
477
    /*
485
    /*
478
    **  Expecting a number
486
    **  Expecting a number
479
    **  strtol will remove leading white space
487
    **  strtol will remove leading white space
480
    */
488
    */
481
    lnumber = strtol( *linep, linep, 10 );
489
    lnumber = strtol( work, &work, 10 );
482
 
490
 
483
    /*
491
    /*
484
    **  Skip the trailing delimiter(s)
492
    **  Skip the trailing delimiter(s)
485
    */
493
    */
486
    while ( p_del(*linep) )
494
    while ( p_del(work) )
487
    {
495
    {
488
        (*linep)++;
496
        work++;
489
    }
497
    }
490
 
498
 
491
    /*
499
    /*
492
    **  A valid number ?
500
    **  A valid number ?
493
    */
501
    */
494
    if ( lnumber == 0 )
502
    if ( lnumber == 0 )
495
        return FALSE;
503
        return FALSE;
496
 
504
 
497
    *number = (int) lnumber;
505
    *number = (int) lnumber;
-
 
506
    *linep = work;
498
    return TRUE;
507
    return TRUE;
499
}
508
}
500
 
509
 
501
/*========================================================================
510
/*========================================================================
502
 *
511
 *