[llvm-commits] [llvm] r153538 - /llvm/trunk/runtime/libprofile/GCDAProfiling.c
Bill Wendling
isanbard at gmail.com
Tue Mar 27 18:27:45 PDT 2012
On Mar 27, 2012, at 5:03 PM, NAKAMURA Takumi wrote:
> 2012/3/28 Bill Wendling <isanbard at gmail.com>:
>> Author: void
>> Date: Tue Mar 27 16:17:04 2012
>> New Revision: 153538
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=153538&view=rev
>> Log:
>> Try to use the CWD if the path to the GCDA output is not available (e.g., the
>> executable has been moved to another machine). If that's not available
>> (read-only or something), then exit gracefully.
>> <rdar://problem/11111686>
>>
>> Modified:
>> llvm/trunk/runtime/libprofile/GCDAProfiling.c
>>
>> Modified: llvm/trunk/runtime/libprofile/GCDAProfiling.c
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/runtime/libprofile/GCDAProfiling.c?rev=153538&r1=153537&r2=153538&view=diff
>> ==============================================================================
>> --- llvm/trunk/runtime/libprofile/GCDAProfiling.c (original)
>> +++ llvm/trunk/runtime/libprofile/GCDAProfiling.c Tue Mar 27 16:17:04 2012
>> @@ -113,6 +113,20 @@
>> recursive_mkdir(filename);
>> output_file = fopen(filename, "wb");
>>
>> + if (!output_file) {
>> + filename[0] = '\0'; /* The size of filename should be big enough. */
>> + char *cptr = strrchr(orig_filename, '/');
>
> It was not C89-compliant. Francois has fixed in r153549.
>
Sorry about this. :-(
>> + strcat(filename, cptr ? cptr + 1 : orig_filename);
>> + output_file = fopen(filename, "wb");
>
> Why strcat() to filename[] that is truncated to zero-length?
> In this case, would it be enough to pick up the pointer rather than to
> update filename[]?
>
> cptr = (cptr ? cptr + 1 : orig_filename);
> fopen(cptr, ...);
>
Hmm...Good point. I'll give it a look. :)
-bw
More information about the llvm-commits
mailing list