[xslt] show stopper for xsldbg, xsltDebuggerCallbacks and libxslt-1.0.9



Hi all,

I have received  a report from Johannes Six of a show stopper for xsldbg :-(

It seems only to set the debugger not the add call, drop call. Plus there are 
several libxslt function names that clashed with functions in xsldbg

------my code -----

/* setup debugger callbacks */
struct DebuggerCallbacks {
    xsltHandleDebuggerCallback debuggercallback;
    xsltAddCallCallback addcallback;
    xsltDropCallCallback dropcallback;
} debuggerDriver;

[....]

    /* setup debugger callbacks */
    debuggerDriver.debuggercallback = handleDebugger;
    debuggerDriver.addcallback = addCall;
    debuggerDriver.dropcallback = dropCall;
    xsltSetDebuggerCallbacks(3, &debuggerDriver);
-------------------


--- xsltutils.c --- line 1294 ---version 1.53 --
    if ((block == NULL) || (no != 1))   
	return(-1);

    callbacks = (xsltDebuggerCallbacksPtr) block;
    xsltDebuggerCurrentCallbacks.handler = callbacks->handler; 
    return(0);

-----------------------

Is there something else I need to do. I have been badly  caught by my the 
risk I raised before. My system has got clogged with different versions of 
libxslt. Even with my best efforts to ensure I was getting the right version 
of libxslt, the positive tests I ran on xsldbg with the patched libxslt-1.0.8 
were misleading :-( 

As it is I can't even get the xsldbg to be called by xslHandleDebugger.  This 
because on my system none of the values to xsltDebuggerCallbacks are being 
set which is very strange. With the changes show I can get the xsldbg to run. 
But I'm still hoping  someone will verify my tests.

I've not been able to create a new release as cvs at sourceforge is not 
working. 

My appologies to those affected by this fault. As soon as sourceforge cvs is 
working again (from my country) I'll make a new release for the xsldbg side 
of the problem. 

bye,

Keith





 
? breakpoint/Makefile
? breakpoint/Makefile.in
? tests/namespaces/err.extra2
? tests/namespaces/err.extra
? tests/namespaces/err.tst2
? tests/namespaces/err.tst3
? tests/namespaces/err.tst4
? tests/namespaces/err.tst
Index: libxslt/xsltutils.c
===================================================================
RCS file: /cvs/gnome/libxslt/libxslt/xsltutils.c,v
retrieving revision 1.53
diff -c -r1.53 xsltutils.c
*** libxslt/xsltutils.c	2001/11/30 12:01:24	1.53
--- libxslt/xsltutils.c	2001/12/11 13:01:59
***************
*** 1291,1301 ****
  {
      xsltDebuggerCallbacksPtr callbacks;
  
!     if ((block == NULL) || (no != 1))
  	return(-1);
  
      callbacks = (xsltDebuggerCallbacksPtr) block;
      xsltDebuggerCurrentCallbacks.handler = callbacks->handler;
      return(0);
  }
  
--- 1291,1303 ----
  {
      xsltDebuggerCallbacksPtr callbacks;
  
!     if ((block == NULL) || (no != XSLT_CALLBACK_NUMBER))
  	return(-1);
  
      callbacks = (xsltDebuggerCallbacksPtr) block;
      xsltDebuggerCurrentCallbacks.handler = callbacks->handler;
+     xsltDebuggerCurrentCallbacks.add  = callbacks->add;
+     xsltDebuggerCurrentCallbacks.drop  = callbacks->drop;
      return(0);
  }
  


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]