Disabled the MMgc root thread selftest (bug 506013) (r+self)
authorLars T Hansen <lhansen@adobe.com>
Thu, 17 Dec 2009 16:27:26 +0100
changeset 3344 f61ced797b612b3ed3938b3977f91a5a62ba4612
parent 3343 a7d8995f6a41c967803c886bb6c6d44afb8f0e62
child 3345 8736f70937c44a2f964b874803d9673add720877
push id1860
push userlhansen@adobe.com
push dateThu, 17 Dec 2009 15:27:32 +0000
bugs506013
Disabled the MMgc root thread selftest (bug 506013) (r+self)
extensions/ST_mmgc_threads.cpp
extensions/ST_mmgc_threads.st
shell/avmshell-features.h
--- a/extensions/ST_mmgc_threads.cpp
+++ b/extensions/ST_mmgc_threads.cpp
@@ -150,16 +150,17 @@ class RCObjectNotifier : public RCObject
 {
 public:
 		RCObjectNotifier(bool *isDead) : isDead(isDead) {}
 		~RCObjectNotifier() { *isDead = true; isDead = NULL; }
 		bool *isDead;
 };
 
 void ST_mmgc_threads::test0() {
+/*
 	   startSlave();
 	   MMGC_GCENTER(gc);
    	   RCObjectNotifier *obj = new (gc) RCObjectNotifier(&isDead);
 	   {
           MMGC_GC_ROOT_THREAD(gc);
 		  kick();
     	  wait();
        }
@@ -170,14 +171,15 @@ verifyPass(!isDead, "!isDead", __FILE__,
 	   gc->ReapZCT();
 verifyPass(!isDead, "!isDead", __FILE__, __LINE__);
 	   gc->Collect();
 verifyPass(!isDead, "!isDead", __FILE__, __LINE__);
 
 	   pthread_join(pthread, NULL);
 
 	   printf("Ignore this: %d\n", *obj->isDead);
+*/
 
 }
 void create_mmgc_threads(AvmCore* core) { new ST_mmgc_threads(core); }
 }
 #endif
 #endif
--- a/extensions/ST_mmgc_threads.st
+++ b/extensions/ST_mmgc_threads.st
@@ -130,16 +130,17 @@ private:
 	waiting = false;
 
 %%epilogue
 	pthread_mutex_destroy(&pmutex);
 	pthread_cond_destroy(&pcond);
 	delete gc;
 
 %%test mmgc_gc_root_thread
+/*
 	   startSlave();
 	   MMGC_GCENTER(gc);
    	   RCObjectNotifier *obj = new (gc) RCObjectNotifier(&isDead);
 	   {
           MMGC_GC_ROOT_THREAD(gc);
 		  kick();
     	  wait();
        }
@@ -150,8 +151,9 @@ private:
 	   gc->ReapZCT();
   	   %%verify !isDead
 	   gc->Collect();
 	   %%verify !isDead
 
 	   pthread_join(pthread, NULL);
 
 	   printf("Ignore this: %d\n", *obj->isDead);
+*/
--- a/shell/avmshell-features.h
+++ b/shell/avmshell-features.h
@@ -99,17 +99,17 @@
       #define AVMFEATURE_THREADED_INTERP 0
     #endif
   #endif
 #else
   #define AVMFEATURE_THREADED_INTERP   0
 #endif
 
 #ifndef AVMFEATURE_SELFTEST
-  #define AVMFEATURE_SELFTEST          0
+  #define AVMFEATURE_SELFTEST          1
 #endif
 
 // https://bugzilla.mozilla.org/show_bug.cgi?id=491866
 // eval is causing insteresting compilation errors that appear
 // to be caused by a compiler bug.
 #ifndef SOLARIS
   #ifndef AVMFEATURE_EVAL
     #define AVMFEATURE_EVAL              1