Re: PATCH 2/4: Xen driver support for serial/paralle

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Daniel P. Berrange" <berrange@xxxxxxxxxx> wrote:
> On Thu, Apr 24, 2008 at 10:42:34PM +0200, Jim Meyering wrote:
>> "Daniel P. Berrange" <berrange@xxxxxxxxxx> wrote:
...
>> It'd be nice to avoid the riskily redundant length,
>> by using a STR* macro that requires a literal string S
>> as argument #2, and uses sizeof(S)-1 as the length argument.
>
> I defined a new convenience function STRPREFIX(str, prefix)
> which applies strlen(prefix) so we avoid the hardcoding.
> I didn't use sizeof(prefix) because someone might pass a
> non-literal string as the prefix and thta would endup as
> sizeof(char*) rather than the real length.

FYI, with a macro, you can ensure it's a literal by concatenating
the empty string, e.g.,

  #define virBufferAddLit(buf_, literal_string_) \
    __virBufferAdd (buf_, "" literal_string_ "", sizeof literal_string_ - 1)

but maybe it's not worth being tricky when compilers
are smart enough to convert strlen("literal") to 7.

--
Libvir-list mailing list
Libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]