discomfitor pushed a commit to branch master.
commit b67be2ee25b8f6ceaae1afbd137335942fe5310e
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Jul 15 05:18:53 2013 +0100
add error messages to ximage function failures
---
src/lib/ecore_x/xlib/ecore_x_image.c | 57 ++++++++++++++++++++++++++++++++++--
1 file changed, 55 insertions(+), 2 deletions(-)
diff --git a/src/lib/ecore_x/xlib/ecore_x_image.c
b/src/lib/ecore_x/xlib/ecore_x_image.c
index 67b7142..3ae9b63 100644
--- a/src/lib/ecore_x/xlib/ecore_x_image.c
+++ b/src/lib/ecore_x/xlib/ecore_x_image.c
@@ -26,10 +26,63 @@ static int _ecore_x_image_shm_can = -1;
static int _ecore_x_image_err = 0;
static int
-_ecore_x_image_error_handler(Display *d EINA_UNUSED,
- XErrorEvent *ev EINA_UNUSED)
+_ecore_x_image_error_handler(Display *d EINA_UNUSED, XErrorEvent *ev)
{
_ecore_x_image_err = 1;
+ switch (ev->error_code)
+ {
+ case BadRequest: /* bad request code */
+ ERR("BadRequest");
+ break;
+ case BadValue: /* int parameter out of range */
+ ERR("BadValue");
+ break;
+ case BadWindow: /* parameter not a Window */
+ ERR("BadWindow");
+ break;
+ case BadPixmap: /* parameter not a Pixmap */
+ ERR("BadPixmap");
+ break;
+ case BadAtom: /* parameter not an Atom */
+ ERR("BadAtom");
+ break;
+ case BadCursor: /* parameter not a Cursor */
+ ERR("BadCursor");
+ break;
+ case BadFont: /* parameter not a Font */
+ ERR("BadFont");
+ break;
+ case BadMatch: /* parameter mismatch */
+ ERR("BadMatch");
+ break;
+ case BadDrawable: /* parameter not a Pixmap or Window */
+ ERR("BadDrawable");
+ break;
+ case BadAccess: /* depending on context */
+ ERR("BadAccess");
+ break;
+ case BadAlloc: /* insufficient resources */
+ ERR("BadAlloc");
+ break;
+ case BadColor: /* no such colormap */
+ ERR("BadColor");
+ break;
+ case BadGC: /* parameter not a GC */
+ ERR("BadGC");
+ break;
+ case BadIDChoice: /* choice not in range or already used */
+ ERR("BadIDChoice");
+ break;
+ case BadName: /* font or color name doesn't exist */
+ ERR("BadName");
+ break;
+ case BadLength: /* Request length incorrect */
+ ERR("BadLength");
+ break;
+ case BadImplementation: /* server is defective */
+ ERR("BadImplementation");
+ break;
+ }
return 0;
}
--
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk