On Tue, May 09, 2023 at 03:05:41PM +0200, Laszlo Ersek wrote: [...] > Then, in the post-patch version, the following catches my eye: > > fp_inner = open_memstream (&str_inner, &len_inner); > if (fp_inner == NULL) { > fail: > /* Try to emit what we can. */ > errno = err; > vfprintf (stderr, fs, args); > fprintf (stderr, "\n"); > return; > } > errno = err; > vfprintf (fp_inner, fs, args); > > Here a common "errno = err" assignment can be factored out, placed just > after the "fp_inner" assignment. But this isn't really relevant, as > fixing problem (2) -- i.e., moving "fail" at the end of the function -- > might reorder the code such that this code extraction is no longer > needed or possible.
I'd prefer to keep the duplicated errno assignment. It needs to be right before the call to vfprintf so that %m expands correctly in the format string. Agreed on the other points. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 100 libraries supported. http://fedoraproject.org/wiki/MinGW _______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://listman.redhat.com/mailman/listinfo/libguestfs