Fix for 99024, debug messages and warnings are only printed
authorbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Wed, 20 Nov 2002 00:17:14 +0000 (00:17 +0000)
committerbillh <billh@e2bd861d-eb25-0410-b326-f6ed22b6b98c>
Wed, 20 Nov 2002 00:17:14 +0000 (00:17 +0000)
when AT_SPI_DEBUG environment variable is set.
at-spi-registryd is silent otherwise.

git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@363 e2bd861d-eb25-0410-b326-f6ed22b6b98c

ChangeLog
atk-bridge/bridge.c
libspi/listener.c
libspi/spi-private.h
registryd/deviceeventcontroller.c
registryd/registry.c

index ea0d226..dd21fee 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,41 @@
 2002-11-19 Bill Haneman <bill.haneman@sun.com>
 
+        FIX for bug 99024.
+       
+       * libspi/spi-private.h:
+       Added DGB() macro, and extern int _dbg declaration.
+       
+       * registryd/registry.c:
+       (definitions) storage for _dbg.
+       (spi_registry_init):
+       Get environment variable "AT_SPI_DEBUG".
+       (spi_registry_set_debug):
+       New method, to initialize _dbg value.
+       (spi_listener_struct_new, spi_registry_object_finalize):
+       (notify_listeners_cb):
+       Changed fprintfs to use DBG and g_warning().
+
+       * registryd/deviceeventcontroller.c:
+       (_deregister_keygrab, spi_controller_register_device_listener):
+       Changed debug/warning messages to use DBG macro.
+
+       * libspi/listener.c:
+       (impl_notify_event):
+       Changed warning messages to use DBG macro and g_warning().
+
+       * atk-bridge/bridge.c:
+       (atk_bridge_init, spi_atk_bridge_get_registry):
+       (spi_atk_bridge_exit_func):
+       (spi_atk_bridge_property_event_listener):
+       Changed status, warning, and error messages to use
+       g_warning, g_message, and DBG macros.
+
+       (atk_bridge_init):
+       Read the state of the AT_SPI_DEBUG environment variable
+       and set a local '_dbg' accordingly.
+       
+2002-11-19 Bill Haneman <bill.haneman@sun.com>
+
         FIXES for 98836, 98842, other bugs.
        
        * configure.in:
index 4647011..dfb8d4f 100644 (file)
 
 #undef SPI_BRIDGE_DEBUG
 
+#define DBG(a,b) if(_dbg>=(a))b
+
+static int _dbg;
+
 static CORBA_Environment ev;
 static Accessibility_Registry registry = NULL;
 static SpiApplication *this_app = NULL;
@@ -152,6 +156,8 @@ atk_bridge_init (gint *argc, gchar **argv[])
     }
   atk_bridge_initialized = TRUE;
 
+  _dbg = g_ascii_digit_value (g_getenv ("AT_SPI_DEBUG"));
+
   if (!bonobo_init (argc, argv ? *argv : NULL))
     {
       g_error ("Could not initialize Bonobo");
@@ -165,7 +171,7 @@ atk_bridge_init (gint *argc, gchar **argv[])
    */
   if (bonobo_activation_iid_get ())
     {
-      fprintf (stderr, "Found Bonobo component\n");
+      DBG (1, g_message ("Found Bonobo component\n"));
       toplevel_handler = g_signal_connect (atk_get_root (), 
                                            "children-changed::add",
                                            (GCallback) spi_atk_bridge_toplevel_added, 
@@ -199,13 +205,13 @@ spi_atk_bridge_do_registration (void)
 
   this_app = spi_application_new (atk_get_root ());
 
-  fprintf (stderr, "About to register application\n");
+  DBG (1, g_message ("About to register application\n"));
 
   spi_atk_bridge_register_application (spi_atk_bridge_get_registry ());
   
   g_atexit (spi_atk_bridge_exit_func);
 
-  fprintf (stderr, "Application registered & listening\n");
+  DBG (1, g_message ("Application registered & listening\n"));
 
 }
 
@@ -234,7 +240,8 @@ spi_atk_bridge_get_registry ()
 
   if (registry_died || (registry == NULL)) {
          CORBA_exception_init (&ev);
-         if (registry_died) g_warning ("registry died! restarting...");
+         if (registry_died) 
+           DBG (1, g_warning ("registry died! restarting..."));
          registry = bonobo_activation_activate_from_id (
                  "OAFIID:Accessibility_Registry:1.0", 0, NULL, &ev);
          
@@ -358,7 +365,7 @@ spi_atk_bridge_exit_func (void)
 {
   BonoboObject *app = (BonoboObject *) this_app;
 
-  fprintf (stderr, "exiting bridge\n");
+  DBG (1, g_message ("exiting bridge\n"));
 
   if (!app)
     {
@@ -373,14 +380,14 @@ spi_atk_bridge_exit_func (void)
    */
   if (!bonobo_is_initialized ())
     {
-      fprintf (stderr, "Re-initializing bonobo\n");
+      DBG (1, g_warning ("Re-initializing bonobo\n"));
       g_assert (bonobo_init (0, NULL));
       g_assert (bonobo_activate ());
     }
   
   deregister_application (app);
 
-  fprintf (stderr, "bridge exit func complete.\n");
+  DBG (1, g_message ("bridge exit func complete.\n"));
 
   if (g_getenv ("AT_BRIDGE_SHUTDOWN"))
     {
@@ -602,8 +609,8 @@ spi_atk_bridge_property_event_listener (GSignalInvocationHint *signal_hint,
   s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0)));
   s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0)));
   values = (AtkPropertyValues*) g_value_get_pointer (param_values + 1);
-  fprintf (stderr, "Received (property) signal %s:%s:%s from object %s (gail %s)\n",
-          g_type_name (signal_query.itype), name, values->property_name, s, s2);
+  DBG (2, g_message ("Received (property) signal %s:%s:%s from object %s (gail %s)\n",
+          g_type_name (signal_query.itype), name, values->property_name, s, s2));
   
 #endif
 
index 7f10f5c..eb418f0 100644 (file)
@@ -64,9 +64,8 @@ impl_notify_event (PortableServer_Servant     servant,
   fprintf (stderr, "source name: '%s'\n",
            Accessibility_Accessible__get_name(e->source, ev));
   if (ev->_major != CORBA_NO_EXCEPTION) {
-    fprintf(stderr,
-            ("Accessibility app error: exception during event notification: %s\n"),
-            CORBA_exception_id(ev));
+           DBG (2, g_warning ("Accessibility app error: exception during event notification: %s\n"),
+               CORBA_exception_id(ev)));
   }
   /*
   fprintf (stderr, "source is component ? : %s\n",
index f10f10e..de50bda 100644 (file)
 
 G_BEGIN_DECLS
 
+#define DBG(a,b) if(_dbg>=(a))b
+
+extern int _dbg;
+
 typedef enum {
        SPI_RE_ENTRANT_CONTINUE = 0,
        SPI_RE_ENTRANT_TERMINATE
index 098eb7d..98294f8 100644 (file)
@@ -507,7 +507,7 @@ _deregister_keygrab (SpiDEController      *controller,
     }
   else
     {
-      g_warning ("De-registering non-existant grab");
+      DBG (1, g_warning ("De-registering non-existant grab"));
     }
 }
 
@@ -595,7 +595,7 @@ spi_controller_register_device_listener (SpiDEController      *controller,
       controller->mouse_listeners = g_list_prepend (controller->mouse_listeners, listener);
       break;
   default:
-      fprintf (stderr, "WARNING: listener registration for unknown device type.\n");
+      DBG (1, g_warning ("listener registration for unknown device type.\n"));
       break;
   }
   return FALSE; 
@@ -651,7 +651,7 @@ spi_controller_notify_mouselisteners (SpiDEController                 *controlle
       if (BONOBO_EX (ev))
         {
           is_consumed = FALSE;
-         fprintf (stderr, "error notifying listener, removing it\n");
+         DBG (2, g_warning ("error notifying listener, removing it\n"));
          spi_deregister_controller_device_listener (controller, listener,
                                                     ev);
           CORBA_exception_free (ev);
@@ -830,7 +830,7 @@ global_filter_fn (GdkXEvent *gdk_xevent, GdkEvent *event, gpointer data)
            }
        }
         else
-               fprintf (stderr, "XKB event %d\n", xkb_ev->xkb_type);
+              DBG (2, g_warning ("XKB event %d\n", xkb_ev->xkb_type));
     }
   
   return GDK_FILTER_CONTINUE;
@@ -1690,7 +1690,7 @@ impl_generate_keyboard_event (PortableServer_Servant           servant,
     }
   if (gdk_error_trap_pop ())
     {
-      g_warning ("Error emitting keystroke");
+      DBG (-1, g_warning ("Error emitting keystroke"));
     }
 }
 
index c1acfb1..0fc99c1 100644 (file)
@@ -41,6 +41,8 @@
 /* A pointer to our parent object class */
 static SpiListenerClass *spi_registry_parent_class;
 
+extern int _dbg = 0;
+
 typedef enum {
   ETYPE_FOCUS,
   ETYPE_OBJECT,
@@ -66,6 +68,13 @@ typedef struct {
   EventTypeCategory event_type_cat;
 } SpiListenerStruct;
 
+static void
+spi_registry_set_debug (char *debug_flag_string)
+{
+  if (debug_flag_string) 
+    _dbg = g_ascii_digit_value(debug_flag_string);
+}
+
 SpiListenerStruct *
 spi_listener_struct_new (Accessibility_EventListener listener, CORBA_Environment *ev)
 {
@@ -143,7 +152,7 @@ desktop_remove_application (SpiDesktop *desktop,
 static void
 spi_registry_object_finalize (GObject *object)
 {
-  fprintf (stderr, "spi_registry_object_finalize called\n");
+  DBG (1, g_warning ("spi_registry_object_finalize called\n"));
 
   /* TODO: unref deviceeventcontroller, which disconnects key listener */
   G_OBJECT_CLASS (spi_registry_parent_class)->finalize (object);
@@ -606,9 +615,9 @@ notify_listeners_cb (GList * const *list, gpointer user_data)
             (Accessibility_EventListener) ls->listener, &ctx->e_out, ctx->ev);
           if (ctx->ev->_major != CORBA_NO_EXCEPTION)
             {
-              g_warning ("Accessibility app error: exception during "
+              DBG (1, g_warning ("Accessibility app error: exception during "
                        "event notification: %s\n",
-                       CORBA_exception_id (ctx->ev));
+                       CORBA_exception_id (ctx->ev)));
              if (ctx->ev->_major == CORBA_SYSTEM_EXCEPTION)
                      CORBA_exception_init (ctx->ev);
              /* clear system exception on notify, it means listener is dead but
@@ -675,8 +684,7 @@ spi_registry_class_init (SpiRegistryClass *klass)
 static void
 spi_registry_init (SpiRegistry *registry)
 {
-  fprintf (stderr, "REGISTRY INITIALIZED: toolkit list = %p\n",
-          &registry->toolkit_listeners);
+  spi_registry_set_debug (g_getenv ("AT_SPI_DEBUG"));
   registry->object_listeners = NULL;
   registry->window_listeners = NULL;
   registry->toolkit_listeners = NULL;