valgrind-detected KJS nasties in 3.0 (fwd)

Harri Porten porten at trolltech.com
Sun Apr 7 16:11:29 BST 2002


I got this from Julian whose mail to kde-core-devel doesn't seem to have
made it through the moderation somehow. David, is this the same problem we
talked about once ? Looks like commenting out some code wasn't enough
and another pass in the garbage collection is needed :}

Harri.

-------- Original Message --------
Subject: valgrind nasties in kjs in 3.0 as released
Date: Fri, 05 Apr 2002 20:26:52 +0100
From: Julian Seward <jseward at acm.org>
Reply-To: jseward at acm.org
To: kde-core-devel at kde.org


Greetings.

I was just playing with kde-3.0 as released and admiring how much 
more valgrind-cleanly it runs than 2 months ago.  Nice work, all!

Whilst browsing http://news.bbc.co.uk/, the following appeared,
which I think doesn't sound good.  This page has a ticker bit at
the top, which I think is what exercises the javascript.

J



khtml (jscript): ScriptInterpreter::mark marking 33 DOM objects
khtml (jscript): ScriptInterpreter::mark marking 54 DOM objects
khtml (jscript): ScriptInterpreter::mark marking 73 DOM objects
khtml (jscript): ScriptInterpreter::mark marking 0 DOM objects
==8059== 
==8059== Invalid read of size 1
==8059==    at 0x4B2B9A16: KJS::ValueImp::setGcAllowed(void) (value.cpp:71)
==8059==    by 0x4B294452: KJS::Collector::collect(void) (collector.cpp:219)
==8059==    by 0x4B2941A1: KJS::Collector::allocate(unsigned int) (collector.cpp:92)
==8059==    by 0x4B2B9A3F: KJS::ValueImp::operator new(unsigned int) (value.cpp:76)
==8059==    Address 0x41784EAC is 8 bytes inside a block of size 36 free'd
==8059==    at 0x4003CE8F: free (vg_clientmalloc.c:692)
==8059==    by 0x4B29445B: KJS::Collector::collect(void) (collector.cpp:220)
==8059==    by 0x4B2941A1: KJS::Collector::allocate(unsigned int) (collector.cpp:92)
==8059==    by 0x4B2B9A3F: KJS::ValueImp::operator new(unsigned int) (value.cpp:76)
==8059== 
==8059== Invalid write of size 1
==8059==    at 0x4B2B9A16: KJS::ValueImp::setGcAllowed(void) (value.cpp:71)
==8059==    by 0x4B294452: KJS::Collector::collect(void) (collector.cpp:219)
==8059==    by 0x4B2941A1: KJS::Collector::allocate(unsigned int) (collector.cpp:92)
==8059==    by 0x4B2B9A3F: KJS::ValueImp::operator new(unsigned int) (value.cpp:76)
==8059==    Address 0x41784EAC is 8 bytes inside a block of size 36 free'd
==8059==    at 0x4003CE8F: free (vg_clientmalloc.c:692)
==8059==    by 0x4B29445B: KJS::Collector::collect(void) (collector.cpp:220)
==8059==    by 0x4B2941A1: KJS::Collector::allocate(unsigned int) (collector.cpp:92)
==8059==    by 0x4B2B9A3F: KJS::ValueImp::operator new(unsigned int) (value.cpp:76)
khtml (part): DONE: 41715
khtml (jscript): ScriptInterpreter::mark marking 128 DOM objects
khtml (jscript): ScriptInterpreter::mark marking 0 DOM objects
khtml (html): style sheet parse mode strict = false
khtml (jscript): ScriptInterpreter::mark marking 163 DOM objects
khtml (jscript): ScriptInterpreter::mark marking 1 DOM objects





More information about the kfm-devel mailing list