Hi!
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.
Cheers!
Uli
Index: edje_player.c
===================================================================
--- edje_player.c (revision 60321)
+++ edje_player.c (working copy)
@@ -674,6 +674,15 @@
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)
{
Index: edje_inspector.c
===================================================================
--- edje_inspector.c (revision 60321)
+++ edje_inspector.c (working copy)
@@ -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 @@
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",
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel