virtestmock: Initialize symbols from stat() and its friends

Introduced by ff376c6283.

Previously, init_syms() was called from stat() mock and its
friends. This is crucial because checkPath() might call
printFile() which in turn calls real_fopen(). But if stat() or
one of its friends is the first function called then because of
lacking init_syms() call no real_* is initialized.

The other thing is that we really want the recorded action to be
"stat" instead of __FUNCTION__ because there's no good in
recording that it was __xstat64 who touched some file.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Michal Privoznik 2019-05-06 16:11:57 +02:00
parent dd5ae5f240
commit e1de5dd2ba

View File

@ -190,7 +190,11 @@ int access(const char *path, int mode)
}
#define VIR_MOCK_STAT_HOOK CHECK_PATH(path)
#define VIR_MOCK_STAT_HOOK \
do { \
init_syms(); \
checkPath(path, "stat"); \
} while (0)
#include "virmockstathelpers.c"