forked from enlightenment/efl
From: Ulrich Eckhardt <doomster@knuut.de>
Subject: [E-devel] Provide sensible errors for edje utilities If you start edje_player or edje_inspector with a path to a file that doesn't exist you get a bogus error message saying that the file doesn't contain any groups. The attached patch uses access() to check if the program can read the file, giving a sensible error message if not. I have checked the other utilities there, too, and they work, with the exception of edje_external_inspector. I'm not sure how this one works at all, but it seems not to take a file but a list of modules, maybe someone with greater insight can take a look at that. Going through things installed under bin, I'll take a look if those behave properly and create patches for those, too, if this one is okay. SVN revision: 60338
This commit is contained in:
parent
8729820393
commit
daabb017dc
|
@ -11,6 +11,7 @@
|
|||
#include <Ecore_Getopt.h>
|
||||
#include <locale.h>
|
||||
#include <fnmatch.h>
|
||||
#include <unistd.h>
|
||||
|
||||
static int _log_dom;
|
||||
#define DBG(...) EINA_LOG_DOM_DBG(_log_dom, __VA_ARGS__)
|
||||
|
@ -1577,6 +1578,15 @@ main(int argc, char **argv)
|
|||
|
||||
file = argv[arg_index];
|
||||
|
||||
// check if the file is accessible
|
||||
if (access(file, R_OK) == -1)
|
||||
{
|
||||
int e = errno;
|
||||
ERR("File '%s' not accessible, error %d (%s).\n",
|
||||
file, e, strerror(e));
|
||||
ret = 1;
|
||||
goto error_getopt;
|
||||
}
|
||||
|
||||
DBG("mode=%s, detail=%d(%s), group=%s, part=%s, program=%s, api-only=" FMT_UCHAR
|
||||
", api-fix=" FMT_UCHAR ", machine=" FMT_UCHAR ", file=%s",
|
||||
|
|
|
@ -674,6 +674,15 @@ int main(int argc, char **argv)
|
|||
ecore_app_args_set(argc, (const char **)argv);
|
||||
edje_scale_set(opts.scale);
|
||||
|
||||
// check if the given edj file is there
|
||||
if (access(argv[args], R_OK) == -1)
|
||||
{
|
||||
int e = errno;
|
||||
fprintf(stderr, "ERROR: file '%s' not accessible, error %d (%s).\n",
|
||||
argv[args], e, strerror(e));
|
||||
goto end;
|
||||
}
|
||||
|
||||
opts.file = argv[args];
|
||||
if (opts.list_groups)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue