database: call getuid only once
[apps/agl-service-data-persistence.git] / ll-database-binding / src / ll-database-binding.c
index bbbba80..e878896 100644 (file)
@@ -72,11 +72,12 @@ static int get_database_path(char *buffer, size_t size)
                        rc = snprintf(buffer, size, "%s/.config/%s", home, dbfile);
                else
                {
-                       struct passwd *pwd = getpwuid(getuid());
+                       uid_t uid = getuid();
+                       struct passwd *pwd = getpwuid(uid);
                        if (pwd)
                                rc = snprintf(buffer, size, "%s/.config/%s", pwd->pw_dir, dbfile);
                        else
-                               rc = snprintf(buffer, size, "/home/%d/.config/%s", (int)getuid(), dbfile);
+                               rc = snprintf(buffer, size, "/home/%d/.config/%s", (int)uid, dbfile);
                }
        }
        return rc;