You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2001/04/26 08:44:29 UTC
cvs commit: embperl/test/html input.htm
richter 01/04/25 23:44:29
Modified: . Tag: Embperl2c Changes.pod epapinit.c epcmd2.c
epcomp.c epdat.h epdom.c
test/cmp Tag: Embperl2c input.htm
test/cmp2 Tag: Embperl2c input.htm
test/html Tag: Embperl2c input.htm
Log:
Embperl 2 - checkbox fix cont.
Revision Changes Path
No revision
No revision
1.129.4.13 +2 -1 embperl/Changes.pod
Index: Changes.pod
===================================================================
RCS file: /home/cvs/embperl/Changes.pod,v
retrieving revision 1.129.4.12
retrieving revision 1.129.4.13
diff -u -r1.129.4.12 -r1.129.4.13
--- Changes.pod 2001/04/16 18:32:29 1.129.4.12
+++ Changes.pod 2001/04/26 06:44:26 1.129.4.13
@@ -4,7 +4,8 @@
- fixed several bugs that caused weired behaviour with nested subs
and tables.
-
+ - fixed a bug that caused Embperl to stop when it sees a checkbox
+ inside a loop, for which no value is in %fdat.
=head1 2.0b2 (BETA) 29. Mar 2001
1.1.2.4 +5 -1 embperl/Attic/epapinit.c
Index: epapinit.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epapinit.c,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -r1.1.2.3 -r1.1.2.4
--- epapinit.c 2001/04/25 14:37:10 1.1.2.3
+++ epapinit.c 2001/04/26 06:44:26 1.1.2.4
@@ -10,13 +10,14 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epapinit.c,v 1.1.2.3 2001/04/25 14:37:10 richter Exp $
+# $Id: epapinit.c,v 1.1.2.4 2001/04/26 06:44:26 richter Exp $
#
###################################################################################*/
#include "ep.h"
+#ifdef APACHE
static void embperl_ApacheInitCleanup (void * p)
@@ -65,3 +66,6 @@
NULL, /* child_exit */
NULL /* post read-request */
};
+
+
+#endif
1.4.2.6 +11 -1 embperl/Attic/epcmd2.c
Index: epcmd2.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epcmd2.c,v
retrieving revision 1.4.2.5
retrieving revision 1.4.2.6
diff -u -r1.4.2.5 -r1.4.2.6
--- epcmd2.c 2001/03/28 10:07:30 1.4.2.5
+++ epcmd2.c 2001/04/26 06:44:26 1.4.2.6
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epcmd2.c,v 1.4.2.5 2001/03/28 10:07:30 richter Exp $
+# $Id: epcmd2.c,v 1.4.2.6 2001/04/26 06:44:26 richter Exp $
#
###################################################################################*/
@@ -85,11 +85,21 @@
hv_store (pCurrReq -> pInputHash, (char *)pName, nNameLen, newSVpv ((nValLen?((char *)pVal):""), nValLen), 0) ;
if (r -> bDebug & dbgInput)
lprintf (r, "[%d]INPU: Has already Attribut: Name: '%*.*s' Value: '%*.*s' Attribute: '%*.*s'\n", r -> nPid, nNameLen, nNameLen, pName, nValLen, nValLen, pVal, nAttrLen, nAttrLen, sAttrName ) ;
+ if ((pNode -> bFlags & (nflgModified | nflgReturn)) == (nflgModified | nflgReturn)) /* this assume, the modify & return was set by a previous call to this function */
+ Element_selfRemoveAttribut (pDomTree, pNode, sAttrName, nAttrLen, 1) ;
}
else
{
if (r -> bDebug & dbgInput)
lprintf (r, "[%d]INPU: No value in %%fdat for Attribut: Name: '%*.*s' Value: '%*.*s' Attribute: '%*.*s'\n", r -> nPid, nNameLen, nNameLen, pName, nValLen, nValLen, pVal, nAttrLen, nAttrLen, sAttrName ) ;
+ if ((pNode -> bFlags & (nflgModified | nflgReturn)) == (nflgModified | nflgReturn)) /* this assume, the modify & return was set by a previous call to this function */
+ Element_selfSetAttribut (pDomTree, pNode, sAttrName, nAttrLen, NULL, 0, 1) ;
+ }
+
+ if ((pNode -> bFlags & nflgModified) == 0)
+ {
+ pNode = Node_selfCondCloneNode (pDomTree, pNode) ;
+ pNode -> bFlags |= nflgModified ; /* don't modifiy attribute again, for example in another loop iteration */
}
}
}
1.4.2.46 +2 -1 embperl/Attic/epcomp.c
Index: epcomp.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epcomp.c,v
retrieving revision 1.4.2.45
retrieving revision 1.4.2.46
diff -u -r1.4.2.45 -r1.4.2.46
--- epcomp.c 2001/04/16 18:32:29 1.4.2.45
+++ epcomp.c 2001/04/26 06:44:26 1.4.2.46
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epcomp.c,v 1.4.2.45 2001/04/16 18:32:29 richter Exp $
+# $Id: epcomp.c,v 1.4.2.46 2001/04/26 06:44:26 richter Exp $
#
###################################################################################*/
@@ -1888,6 +1888,7 @@
r -> nPhase = phRun ;
+ r -> xSourceDomTree = r -> xCurrDomTree ;
if (!(r -> xCurrDomTree = DomTree_clone (*pDomTree, &pCurrDomTree, sSubName?1:0)))
return 1 ;
1.20.4.16 +6 -5 embperl/epdat.h
Index: epdat.h
===================================================================
RCS file: /home/cvs/embperl/epdat.h,v
retrieving revision 1.20.4.15
retrieving revision 1.20.4.16
diff -u -r1.20.4.15 -r1.20.4.16
--- epdat.h 2001/03/28 10:07:30 1.20.4.15
+++ epdat.h 2001/04/26 06:44:27 1.20.4.16
@@ -10,7 +10,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdat.h,v 1.20.4.15 2001/03/28 10:07:30 richter Exp $
+# $Id: epdat.h,v 1.20.4.16 2001/04/26 06:44:27 richter Exp $
#
###################################################################################*/
@@ -408,10 +408,11 @@
/* --- DomTree ---*/
- tNode xDocument ;
- tNode xCurrNode ;
- tIndex xCurrDomTree ;
- struct tTokenTable * pTokenTable ;
+ tNode xDocument ; /* Document node */
+ tNode xCurrNode ; /* node that was last executed */
+ tIndex xCurrDomTree ; /* DomTree we are currently working on */
+ tIndex xSourceDomTree ;/* DomTree which contains the source */
+ struct tTokenTable * pTokenTable ; /* holds the current syntax */
#endif
1.4.2.31 +4 -2 embperl/Attic/epdom.c
Index: epdom.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epdom.c,v
retrieving revision 1.4.2.30
retrieving revision 1.4.2.31
diff -u -r1.4.2.30 -r1.4.2.31
--- epdom.c 2001/04/16 18:32:29 1.4.2.30
+++ epdom.c 2001/04/26 06:44:27 1.4.2.31
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdom.c,v 1.4.2.30 2001/04/16 18:32:29 richter Exp $
+# $Id: epdom.c,v 1.4.2.31 2001/04/26 06:44:27 richter Exp $
#
###################################################################################*/
@@ -2201,7 +2201,9 @@
for (i = 0; i < 5; i++)
lprintf (r, "[%d]toString: %d = %d -> %d\n", r -> nPid, i, pOrder[i].xFromNode, pOrder[i].xToNode) ;
}
+ /* ignore this...
mydie ("Internal Error: Orderindex out of range") ;
+ */
}
}
@@ -2532,7 +2534,7 @@
return pAttr ;
}
- if (pNode -> bFlags & nflgModified && bClone)
+ if ((pNode -> bFlags & nflgModified) && bClone)
pNewNode = Node_selfCloneNode (pDomTree, pNode, 1) ;
else
pNewNode = pNode ;
No revision
No revision
1.12.4.3 +7 -0 embperl/test/cmp/input.htm
Index: input.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/input.htm,v
retrieving revision 1.12.4.2
retrieving revision 1.12.4.3
diff -u -r1.12.4.2 -r1.12.4.3
--- input.htm 2001/03/26 10:29:18 1.12.4.2
+++ input.htm 2001/04/26 06:44:28 1.12.4.3
@@ -314,6 +314,13 @@
<input type="checkbox" value="Wert7" name="mult" >
<input type="checkbox" value="Wert7" name="mult">
+ <input type="checkbox" value="Wert1" name="mult">
+ <input type="checkbox" value="Wert2" name="mult">
+ <input type="checkbox" value="Wert3" name="mult" checked>
+ <input type="checkbox" value="Wert4" name="mult">
+ <input type="checkbox" value="Wert5" name="mult">
+ <input type="checkbox" value="Wert6" name="mult" checked>
+ <input type="checkbox" value="Wert7" name="mult">
ks = Kategorie Region cb1 cb10 cb11 cb2 cb3 cb4 cb5 cb6 cb7 cb8 cb9 dec feld1 feld5 feld6 feld7 feld8 mult neu1 neu2 neu3 undef<p>
<table border=10>
No revision
No revision
1.1.2.4 +7 -0 embperl/test/cmp2/Attic/input.htm
Index: input.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp2/Attic/input.htm,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -r1.1.2.3 -r1.1.2.4
--- input.htm 2001/03/26 10:29:18 1.1.2.3
+++ input.htm 2001/04/26 06:44:29 1.1.2.4
@@ -281,6 +281,13 @@
<input type="checkbox" value="Wert7" name="mult">
<input type="checkbox" value="Wert7" name="mult">
+ <input type="checkbox" value="Wert1" name="mult">
+ <input type="checkbox" value="Wert2" name="mult">
+ <input type="checkbox" value="Wert3" name="mult" checked>
+ <input type="checkbox" value="Wert4" name="mult">
+ <input type="checkbox" value="Wert5" name="mult">
+ <input type="checkbox" value="Wert6" name="mult" checked>
+ <input type="checkbox" value="Wert7" name="mult">
ks = cb1 cb2 cb5 cb6 cb7 cb8 dec feld1 feld2 feld3 feld4 feld5 feld6 feld7 feld8 mult neu1 neu2 neu3 undef<p>
<table border=10>
No revision
No revision
1.10.4.7 +75 -0 embperl/test/html/input.htm
Index: input.htm
===================================================================
RCS file: /home/cvs/embperl/test/html/input.htm,v
retrieving revision 1.10.4.6
retrieving revision 1.10.4.7
diff -u -r1.10.4.6 -r1.10.4.7
--- input.htm 2001/03/26 10:29:19 1.10.4.6
+++ input.htm 2001/04/26 06:44:29 1.10.4.7
@@ -1,5 +1,27 @@
<html>
+ [$ foreach $i (1,5,2,6) $]
+ <input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv1" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv2" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv3" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv4" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv5" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv6" name="cb[+ $i +]">
+
+ <input type="text" name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
+ <input type="text" name="feld[+ $i +]">
+
+ [$endforeach$]
+
+
+ [$ foreach $i (5,2,6,1) $]
+ <input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
+ <input type="text" name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
+ <input type="text" name="feld[+ $i +]">
+ [$endforeach$]
+
+
<head>
<title>Test for interpretation of input tag</title>
</head>
@@ -212,6 +234,59 @@
<input type="checkbox" value="Wert7" name="mult" checked>
<input type="checkbox" value="Wert7" name="mult">
+
+ <input type="checkbox" value="cbv1" name="cb1">
+ <input type="checkbox" value="cbv1" name="cb1">
+ <input type="checkbox" value="cbv2" name="cb1">
+ <input type="checkbox" value="cbv3" name="cb1">
+ <input type="checkbox" value="cbv4" name="cb1">
+ <input type="checkbox" value="cbv5" name="cb1">
+ <input type="checkbox" value="cbv6" name="cb1">
+ <input type="checkbox" value="cbv5" name="cb5">
+ <input type="checkbox" value="cbv1" name="cb5">
+ <input type="checkbox" value="cbv2" name="cb5">
+ <input type="checkbox" value="cbv3" name="cb5">
+ <input type="checkbox" value="cbv4" name="cb5">
+ <input type="checkbox" value="cbv5" name="cb5">
+ <input type="checkbox" value="cbv6" name="cb5">
+ <input type="checkbox" value="cbv2" name="cb2">
+ <input type="checkbox" value="cbv1" name="cb2">
+ <input type="checkbox" value="cbv2" name="cb2">
+ <input type="checkbox" value="cbv3" name="cb2">
+ <input type="checkbox" value="cbv4" name="cb2">
+ <input type="checkbox" value="cbv5" name="cb2">
+ <input type="checkbox" value="cbv6" name="cb2">
+ <input type="checkbox" value="cbv6" name="cb6">
+ <input type="checkbox" value="cbv1" name="cb6">
+ <input type="checkbox" value="cbv2" name="cb6">
+ <input type="checkbox" value="cbv3" name="cb6">
+ <input type="checkbox" value="cbv4" name="cb6">
+ <input type="checkbox" value="cbv5" name="cb6">
+ <input type="checkbox" value="cbv6" name="cb6">
+
+
+ [$ foreach $i (1,5,2,6) $]
+ <input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv1" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv2" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv3" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv4" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv5" name="cb[+ $i +]">
+ <input type="checkbox" value="cbv6" name="cb[+ $i +]">
+
+ <input type="text" name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
+ <input type="text" name="feld[+ $i +]">
+
+ [$endforeach$]
+
+
+ [$ foreach $i (5,2,6,1) $]
+ <input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
+ <input type="text" name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
+ <input type="text" name="feld[+ $i +]">
+ [$endforeach$]
+
+
ks = [+ do { @ks = sort keys %idat ; "@ks" } +]<p>
<table border=10>
---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org