Ignore:
Timestamp:
Jun 11, 2008 11:18:04 AM (13 years ago)
Author:
bennylp
Message:

Fixed error representing the qvalue in Contact header (parser error), and optimize the printing to remove ending zero digits (thanks Philippe Leuba)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip/sip_parser.c

    r1957 r2005  
    16411641            char *dot_pos = (char*) pj_memchr(pvalue.ptr, '.', pvalue.slen); 
    16421642            if (!dot_pos) { 
    1643                 hdr->q1000 = pj_strtoul(&pvalue); 
     1643                hdr->q1000 = pj_strtoul(&pvalue) * 1000; 
    16441644            } else { 
     1645                pj_str_t tmp = pvalue; 
     1646 
     1647                tmp.slen = dot_pos - pvalue.ptr; 
     1648                hdr->q1000 = pj_strtoul(&tmp) * 1000; 
     1649 
    16451650                pvalue.slen = (pvalue.ptr+pvalue.slen) - (dot_pos+1); 
    16461651                pvalue.ptr = dot_pos + 1; 
    1647                 hdr->q1000 = pj_strtoul_mindigit(&pvalue, 3); 
     1652                hdr->q1000 += pj_strtoul_mindigit(&pvalue, 3); 
    16481653            }     
    16491654        } else if (!parser_stricmp(pname, pconst.pjsip_EXPIRES_STR) && pvalue.slen) { 
Note: See TracChangeset for help on using the changeset viewer.