• R/O
  • SSH
  • HTTPS

adp: Commit


Commit MetaInfo

Revision307 (tree)
Time2012-06-08 14:18:53
Authorohfuji

Log Message

Cut述語のバグフィックス

Change Summary

Incremental Difference

--- trunk/adp_unify.cpp (revision 306)
+++ trunk/adp_unify.cpp (revision 307)
@@ -770,7 +770,11 @@
770770
771771 void PVeriable::mark_hlocal(ExecContext *c, Array<bool> &marker) const
772772 {
773- marker[idx] = true;
773+ const PObject *item = (*c->hl)[idx];
774+ if ( item != 0 ) {
775+ marker[idx] = true;
776+ return item->mark_hlocal(c, marker);
777+ }
774778 }
775779
776780
@@ -790,8 +794,12 @@
790794
791795 void PEVeriable::mark_hlocal(ExecContext *c, Array<bool> &marker) const
792796 {
793- if ( vl == c->hl ) {
794- marker[idx] = true;
797+ const PObject *item = (*vl)[idx];
798+ if ( item != 0 ) {
799+ if ( vl == c->hl ) {
800+ marker[idx] = true;
801+ }
802+ return item->mark_hlocal(c, marker);
795803 }
796804 }
797805
--- trunk/adp_execute.h (revision 306)
+++ trunk/adp_execute.h (revision 307)
@@ -740,7 +740,8 @@
740740 for ( size_t i = 0; i < p->hlocal.size(); i++ ) {
741741 const PObject *o = p->hlocal[i];
742742 if ( o != 0 && maker[i] == true ) {
743- p->hlocal[i] = o->getval2(p,&p->hlocal)->clone(&p->objs);
743+ PObjectArray *pos = p->p ? p->p->pobjs : &p->objs;
744+ p->hlocal[i] = o->getval2(p,&p->hlocal)->clone(pos);
744745 }
745746 }
746747
--- trunk/adp.cpp (revision 306)
+++ trunk/adp.cpp (revision 307)
@@ -23,12 +23,12 @@
2323
2424 // 定数
2525 #ifdef ___X64____
26-#define VERSION_TEXT "ADP Ver 0.82.0306 X64 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
26+#define VERSION_TEXT "ADP Ver 0.82.0307 X64 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
2727 #else
2828 #if _WIN32
29-#define VERSION_TEXT "ADP Ver 0.82.0306 x86 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
29+#define VERSION_TEXT "ADP Ver 0.82.0307 x86 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
3030 #else
31-#define VERSION_TEXT "ADP Ver 0.82.0306 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
31+#define VERSION_TEXT "ADP Ver 0.82.0307 (http://www.adp.la/)\nCopyright (C) 2010-2012 Katsuhisa Ohfuji. This progman is distributed under GPL.\n"
3232 #endif
3333 #endif
3434
Show on old repository browser