Re: [xslt] Relase of xsldbg-0.7.9, : release of xsldbg-0.8.1
- From: Keith Isdale <k_isdale tpg com au>
- To: xslt <xslt gnome org>
- Subject: Re: [xslt] Relase of xsldbg-0.7.9, : release of xsldbg-0.8.1
- Date: Thu, 29 Nov 2001 14:57:07 +1000
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]