Better error handling, fix from Ryan Fleet.

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1520 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
François Revol
2002-10-14 22:20:19 +00:00
parent 9d9af368f7
commit bb8a5f5822
2 changed files with 25 additions and 11 deletions
+7 -1
View File
@@ -11,7 +11,7 @@ int main(int argc, char *argv[])
if(argc < 2)
{
printf("usage: listattr 'filename' ['filename' ...]\n");
return 0;
return 1;
}
for(int i = 1; i < argc; ++i)
@@ -37,6 +37,12 @@ int main(int argc, char *argv[])
case 0x4d494d53:
printf(" MIME str");
break;
case 0x43535452:
printf(" Text");
break;
case 0x4c4f4e47:
printf(" Int-32");
break;
default:
printf("0x%lx", attrInfo.type);
break;
+18 -10
View File
@@ -1,6 +1,6 @@
// Author: Ryan Fleet
// Created: 9th October 2002
// Modified: 10th October 2002
// Modified: 14th October 2002
#include <cstdio>
#include <cstring>
@@ -20,33 +20,33 @@ void help(void)
}
void getversion(const char *filename, version_kind kind, bool bLongFlag, bool bNumericalFlag)
int getversion(const char *filename, version_kind kind, bool bLongFlag, bool bNumericalFlag)
{
BFile file(filename, O_RDONLY);
if(file.InitCheck() != B_OK)
{
printf("Couldn't get file info!\n");
return;
return 1;
}
BAppFileInfo info(&file);
if(info.InitCheck() != B_OK)
{
printf("Couldn't get file info!\n");
return;
return 1;
}
version_info version;
if(info.GetVersionInfo(&version, kind) != B_OK)
{
printf("Version unknown!\n");
return;
return 1;
}
if(true == bLongFlag)
{
printf("%s\n", version.long_info);
return;
return 0;
}
if(true == bNumericalFlag)
@@ -64,10 +64,12 @@ void getversion(const char *filename, version_kind kind, bool bLongFlag, bool bN
case 5: printf("f "); break;
};
printf("%lu\n", version.internal);
return;
return 0;
}
printf("%s\n", version.short_info);
return 0;
}
@@ -182,12 +184,18 @@ int main(int argc, char *argv[])
}
}
}
int status = 0;
int retval = 0;
for(i = 1; i < argc; ++i)
{
if(strncmp(argv[i], "-", 1) != 0)
getversion(argv[i], kind, bLongFlag, bNumericalFlag);
{
status = getversion(argv[i], kind, bLongFlag, bNumericalFlag);
if(status != 0)
retval = 1;
}
}
return 0;
return retval;
}