Re: [PATCH] tests: dynamically replace dnsmasq path

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

 



Hello Eric,

Am Montag 30 Januar 2012 20:18:15 schrieb Eric Blake:
> > +        if (diff > 0) {
> > +            tmp = realloc((void *)*buf, new_len);
>
> We should not be using realloc in this file, but should be using
> VIR_RESIZE_N or similar.

Okay, makes the code even more readable.

> > +        memmove(token_start, replacement, replacement_len);
>
> But this would be more efficient as memcpy, since replacement (better
> not) overlap with token_start.

I know of some projects which forbid memcpy() because of the missing overlap 
handling. But if this is okay with libvirt, I'll use it.
I hope performance will never be a problem with this simple test scenario, 
because then doing one realloc() instead of one for each found would be 
better.

> > +        if (diff < 0) {
> > +            tmp = realloc((void *)*buf, new_len);
>
> No need to downsize the allocation - it's okay to leave junk in the tail
> end of the buffer, as long as we have a trailing NUL to stop us in time.

Fine with me for this simple test case, but if that would be generalized and 
be used in other places, this might become a problem. I'll add a comment.

Sincerely
Philipp
-- 
Philipp Hahn           Open Source Software Engineer      hahn@xxxxxxxxxxxxx
Univention GmbH        Linux for Your Business        fon: +49 421 22 232- 0
Mary-Somerville-Str.1  D-28359 Bremen                 fax: +49 421 22 232-99
                                                   http://www.univention.de/

Attachment: signature.asc
Description: This is a digitally signed message part.

--
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]