[PATCH] manual/memory.texi: Remove locale from muntrace's markings

Ma Shimiao mashimiao.fnst@cn.fujitsu.com
Wed Mar 4 07:51:00 GMT 2015


On 03/03/2015 06:20 PM, Florian Weimer wrote:
> On 03/03/2015 08:28 AM, Ma Shimiao wrote:
>> diff --git a/manual/memory.texi b/manual/memory.texi
>> index 0729e70..a77c2dc 100644
>> --- a/manual/memory.texi
>> +++ b/manual/memory.texi
>> @@ -1700,9 +1700,13 @@ systems.  The prototype can be found in @file{mcheck.h}.
>>  @comment mcheck.h
>>  @comment GNU
>>  @deftypefun void muntrace (void)
>> -@safety{@prelim{}@mtunsafe{@mtasurace{:mtrace} @mtasuconst{:malloc_hooks} @mtslocale{}}@asunsafe{@asucorrupt{} @ascuheap{}}@acunsafe{@acucorrupt{} @acsmem{} @aculock{} @acsfd{}}}
>> +@safety{@prelim{}@mtunsafe{@mtasurace{:mtrace} @mtasuconst{:malloc_hooks}}@asunsafe{@asucorrupt{} @ascuheap{}}@acunsafe{@acucorrupt{} @acsmem{} @aculock{} @acsfd{}}}
>> +@c As we know, only if we passes custom string format or format which 
>> +@c contains single quota to fprintf(), locale problem will occur. 
>> +@c Though calls function fprintf(), muntrace() will not execute the
>> +@c area which causes locale problem.
> 
> The locale dependency is also exposed by floating point formatting (%f
> for example) because the decimal separator is not always a point.  So I
> think your new comment is misleading.
> 
Ah.., It seems it's my miss.
I reread the source of fprintf(), it calls printf_fp() to deal with floating
point formatting. printf_fp() can cause locale problem.
Am I right?

Best regards,
-- 
Ma Shimiao
Development Dept.I
Nanjing Fujitsu Nanda Software Tech. Co., Ltd.(FNST)



More information about the Libc-alpha mailing list