X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Ffs%2Fandroid%2Fstat_owner.cpp;fp=source%2Ffs%2Fandroid%2Fstat_owner.cpp;h=48823e948372ae6f237eb906656683ff9464b1de;hp=45fba304e76907325247e140476fd05b8127b9d7;hb=30ce69b5cb05712c3a4903b0f397912119c4f1f9;hpb=122846f0881673770d88eff7d925ecf25c01b62e diff --git a/source/fs/android/stat_owner.cpp b/source/fs/android/stat_owner.cpp index 45fba30..48823e9 100644 --- a/source/fs/android/stat_owner.cpp +++ b/source/fs/android/stat_owner.cpp @@ -9,17 +9,27 @@ namespace FS { void Stat::Private::fill_owner_info(Stat::OwnerInfo &result) { - struct passwd *owner; - if((owner = getpwuid(owner_id))) - result.owner = owner->pw_name; + if(owner_id!=INVALID_UID) + { + struct passwd *owner; + if((owner = getpwuid(owner_id))) + result.owner = owner->pw_name; + else + result.owner = format("%d", owner_id); + } else - result.owner = format("%d", owner_id); + result.owner = "None"; - struct group *group; - if((group = getgrgid(group_id))) - result.group = group->gr_name; + if(group_id!=INVALID_GID) + { + struct group *group; + if((group = getgrgid(group_id))) + result.group = group->gr_name; + else + result.group = format("%d", group_id); + } else - result.group = format("%d", group_id); + result.group = "None"; } } // namespace FS