On 04/24/2014 10:05 AM, Daniel P. Berrange wrote: > Add virFileFindResource which will try to locate files > in the local build tree if the calling binary (eg libvirtd or > test suite) is being run from the build tree. The corresponding > virFileActivateDirOverride should be called at startup passing > in argv[0]. This will be examined for evidence of libtool magic > binary prefix / sub-directory in order to activate the override. > > Signed-off-by: Daniel P. Berrange <[email protected]> > --- > src/Makefile.am | 2 ++ > src/libvirt_private.syms | 3 ++ > src/util/virfile.c | 83 > ++++++++++++++++++++++++++++++++++++++++++++++++ > src/util/virfile.h | 11 +++++++ > 4 files changed, 99 insertions(+) >
>
> +
> +static bool useDirOverride = false;
C99 guarantees that static variables will initialize false, without an
explicit initializer.
> +char *virFileFindResourceFull(const char *filename,
> +char *
> +virFileFindResource(const char *filename,
> +void virFileActivateDirOverride(const char *argv0)
Not very consistent on whether to have a line break between return type
and function name.
> +{
> + char *file = strrchr(argv0, '/');
> + if (!file || file[1] == '\0')
> + return;
If file[1] == '\0', someone is playing nasty games with their exec()
call, because you can't exec a directory :) At least your code is
defensive against it.
In addition to the 's/none/non/' pointed out in the other thread, ACK.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
