Re: [xslt] Relase of xsldbg-0.7.9, : release of xsldbg-0.8.1



Hi all,

Kdbg (in xsldbg mode) and  xsldbg-0.8.2  has been released see below.

Daniel wrote,
 
>>  Okay, looks good (libxslt-1.0.8_ki_0.8.1.diff), applied !
>>However I noticed that xslHandleDebugger() is still called from a few
>>places while it's now a noop function. Do you plan to turn 
>> xslHandleDebugger()
>> back into a useful function or should the calls be removed (we can't
>> really remove it since it's a public API now ...)

Please don't remove any calls to xslHandleDebugger() as this is CRITICAL to 
the debugger working! I've checkout your version 1.0.8 that has 
xsltHandleDebugger removed the build fails with debugging enabled. Please 
surround the xslHandelDebugger with a #define it you want. But  I'm sure that 
as it is there will be problems for  at least win32 platforms.
 
I've not plan for putting content into this function it is just a hook into 
my code. The linker does its magic and it just works! This does mean that 
xsldbg will always need to be dynamically linked. I don't think it is 
possible to overloaded functions from a static library. ?

While I'm talking 
  o if anyone has some tests xsl scripts that I could add for xsldbg it be 
much appreciated. 
 o in transform.c : function xsltApplyOneTemplate I'm getting duplicate more 
calls to the debugger when a node's child is a text element. Suggestions 
would be welcome it attached a patch which seems to do the trick.
  o I'm not sure how much sense it makes to allow debugging of top level 
nodes out side of a xsl:template node. No stylesheet data would be available 
so use is there in debugging them. 

I've made another stabe release, which is last for a week or so :) . Taged 
rel-0-8.2. which hopefully gives Igor a chance to win32'ze xsldbg. I've 
included changes need for the "risc os". (info  provided by Justin)

Also I've added a diff for kdbg . 

Yep a graphical front end to xsldbg. It's in early stages of development but 
is usable See 
     http://sourceforge.net/projects/kdbg/
for kdbg 
and xsldbg web site for the diff. Please look its release notes. 

For a coverage on what I know works see testcoverage.txt file in the tests 
directory of the latest xsldbg release.

Daniel : The patches you made to include  lib*.la to be added to a new  
library this are troublesome. Would you add a configure parameter to avoid 
using them.


 
bye,

Keith


xsldbg:
	http://xsldbg.sourceforge.net
	http://sourceforge.net/projects/xsldbg





? 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/transform.c
===================================================================
RCS file: /cvs/gnome/libxslt/libxslt/transform.c,v
retrieving revision 1.156
diff -c -r1.156 transform.c
*** libxslt/transform.c	2001/11/27 21:18:06	1.156
--- libxslt/transform.c	2001/11/29 03:51:49
***************
*** 1034,1039 ****
--- 1034,1040 ----
  
  }
  
+ 
  /**
   * xsltApplyOneTemplate:
   * @ctxt:  a XSLT process context
***************
*** 1057,1063 ****
      xmlNodePtr oldInst = NULL;
      xmlAttrPtr attrs;
      int oldBase;
! 
  #ifdef WITH_DEBUGGER
      int addCallResult = 0;
  #endif
--- 1058,1065 ----
      xmlNodePtr oldInst = NULL;
      xmlAttrPtr attrs;
      int oldBase;
!     xmlNodePtr debugedNode = NULL;  
!  
  #ifdef WITH_DEBUGGER
      int addCallResult = 0;
  #endif
***************
*** 1081,1092 ****
                  return;
          }
  
!         if (templ)
              xslHandleDebugger(templ->elem, node, templ, ctxt);
!         else if (list)
  	  xslHandleDebugger(list, node, templ, ctxt);
! 	else if (ctxt->inst)
  	  xslHandleDebugger(ctxt->inst, node, templ, ctxt);
      }
      /*  -- end --- */
  #endif
--- 1083,1098 ----
                  return;
          }
  
!         if (templ){
              xslHandleDebugger(templ->elem, node, templ, ctxt);
! 	    debugedNode = templ->elem;
!         }else if (list){
  	  xslHandleDebugger(list, node, templ, ctxt);
! 	  debugedNode = list;
! 	}else if (ctxt->inst){
  	  xslHandleDebugger(ctxt->inst, node, templ, ctxt);
+ 	  debugedNode = ctxt->inst;
+ 	}
      }
      /*  -- end --- */
  #endif
***************
*** 1157,1163 ****
  	    goto error;
          }
  #ifdef WITH_DEBUGGER
!         if (xslDebugStatus != DEBUG_NONE)
              xslHandleDebugger(cur, node, templ, ctxt);
  #endif
  
--- 1163,1169 ----
  	    goto error;
          }
  #ifdef WITH_DEBUGGER
!         if (xslDebugStatus != DEBUG_NONE && (debugedNode != cur))
              xslHandleDebugger(cur, node, templ, ctxt);
  #endif
  
Index: libxslt/variables.c
===================================================================
RCS file: /cvs/gnome/libxslt/libxslt/variables.c,v
retrieving revision 1.51
diff -c -r1.51 variables.c
*** libxslt/variables.c	2001/10/06 13:11:35	1.51
--- libxslt/variables.c	2001/11/29 03:51:52
***************
*** 33,38 ****
--- 33,42 ----
  #define WITH_XSLT_DEBUG_VARIABLE
  #endif
  
+ #ifdef WITH_DEBUGGER
+ #include "../breakpoint/breakpoint.h"
+ #endif
+ 
  /************************************************************************
   *									*
   *			Module interfaces				*
***************
*** 417,422 ****
--- 421,432 ----
  #ifdef WITH_XSLT_DEBUG_VARIABLE
      xsltGenericDebug(xsltGenericDebugContext,
  	"Evaluating global variable %s\n", elem->name);
+ #endif
+ 
+ #ifdef WITH_DEBUGGER
+         if ((xslDebugStatus != DEBUG_NONE) &&
+ 	    elem->comp && elem->comp->inst)
+             xslHandleDebugger(elem->comp->inst, NULL, NULL, ctxt);
  #endif
  
      precomp = elem->comp;


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