Karel Zak wrote:
+    return strdup(tapfdstr);
         ^^^^^^^^^^^^^^^^^^^
  where is allocation check?

There's a strong argument that you shouldn't check for out of memory errors on small heap allocations. After all, in a typical C program there's a ratio somewhere around 10 : 1 of stack objects allocated : objects allocated on the heap (malloc, strdup). Yet stack object allocation is almost never checked for failures. So you're making your code considerably longer and harder to understand in order to catch failures in only 1 in 10 memory allocations.

Moreover on most Linux distributions the stack is limited to something uselessly small like 8 MB, which makes recursive algorithms fail when there's plenty of free memory around.

Rich.

--
Emerging Technologies, Red Hat  http://et.redhat.com/~rjones/
64 Baker Street, London, W1U 7DF     Mobile: +44 7866 314 421
 "[Negative numbers] darken the very whole doctrines of the equations
 and make dark of the things which are in their nature excessively
 obvious and simple" (Francis Maseres FRS, mathematician, 1759)

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

Reply via email to