Skip Menu |

This queue is for tickets about the Tk CPAN distribution.

Report information
The Basics
Id: 18924
Status: open
Priority: 0/
Queue: Tk

People
Owner: Nobody in particular
Requestors: black-eagle [...] comcast.net
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: (no value)
Fixed in: (no value)



Subject: Memory leak
Perl notebook has a memory leak. Using this code you can see a leak. #!/perl/bin/perl -W use Tk; # example from pg. 576 of mastering Perl/Tk $mw = MainWindow->new(); # create the notebook and fill the window $nb = $mw->NoteBook()->pack(-expand => 1, -fill => 'both'); # Page 1 on the notebook, with button on the page $p1 = $nb->add('page1', -label => 'Page 1'); $p1->Button(-text => 'Cleck me!')->pack(); # empty page 2 $nb->add('page2', -label => 'Page 2'); MainLoop; You must select the tabs multipal time and notice the memory used. Memory will be eaten up.
On Tue Apr 25 20:07:39 2006, guest wrote: Show quoted text
> Perl notebook has a memory leak. Using this code you can see a leak. > > #!/perl/bin/perl -W > use Tk; # example from pg. 576 of mastering Perl/Tk > $mw = MainWindow->new(); > # create the notebook and fill the window > $nb = $mw->NoteBook()->pack(-expand => 1, -fill => 'both'); > # Page 1 on the notebook, with button on the page > $p1 = $nb->add('page1', -label => 'Page 1'); > $p1->Button(-text => 'Cleck me!')->pack(); > # empty page 2 > $nb->add('page2', -label => 'Page 2'); > MainLoop; > > You must select the tabs multipal time and notice the memory used. > Memory will be eaten up.
Can you give the version number of your Tk and also the output of perl -V ? Thanks, Slaven
Subject: RE: [rt.cpan.org #18924] Memory leak
Date: Wed, 25 Oct 2006 22:26:58 -0400
To: <bug-Tk [...] rt.cpan.org>
From: "Roy Antoine" <black-eagle [...] comcast.net>
I am not sure of the version, but here is what I think. TK_PATCH_LEVEL "8.4.5" Perl -V Set up gcc environment - 2.9-psion-98r2 Summary of my perl5 (revision 5 version 8 subversion 7) configuration: Platform: osname=MSWin32, osvers=5.0, archname=MSWin32-x86-multi-thread uname='' config_args='undef' hint=recommended, useposix=true, d_sigaction=undef usethreads=define use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DP ERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -DHASATTRIBUTE -fno-strict-aliasing', optimize='-O2', cppflags='-DWIN32' ccversion='12.00.8804', gccversion='2.9-psion-98r2', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='gcc', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\lib\CORE" -machine:x86' libpth=\lib libs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lw s2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lmsvcrt perllibs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lmsvcrt libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl58.lib gnulibc_version='undef' Dynamic Linking: dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags='-mdll' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES USE_SITECUSTOMIZE PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS Locally applied patches: ActivePerl Build 815 [211909] Iin_load_module moved for compatibility with build 806 PerlEx support in CGI::Carp Less verbose ExtUtils::Install and Pod::Find instmodsh upgraded from ExtUtils-MakeMaker-6.25 Patch for CAN-2005-0448 from Debian with modifications Upgrade to Time-HiRes-1.76 25774 Keys of %INC always use forward slashes 25747 Accidental interpolation of $@ in Pod::Html 25362 File::Path::mkpath resets errno 25181 Incorrect (X)HTML generated by Pod::Html 24999 Avoid redefinition warning for MinGW 24699 ICMP_UNREACHABLE handling in Net::Ping 21540 Fix backward-compatibility issues in if.pm Built under MSWin32 Compiled at Nov 2 2005 08:44:52 %ENV: PERL="C:\perl\bin" @INC: C:/Perl/lib C:/Perl/site/lib . Roy Antoine ------------------------------------------ How smart you are depends on where you are standing at the moment. Burt Reynolds ------------------------------------------ Show quoted text
-----Original Message----- From: Slaven_Rezic via RT [mailto:bug-Tk@rt.cpan.org] Sent: Monday, October 23, 2006 7:02 PM To: black-eagle@comcast.net Subject: [rt.cpan.org #18924] Memory leak <URL: http://rt.cpan.org/Ticket/Display.html?id=18924 > On Tue Apr 25 20:07:39 2006, guest wrote:
> Perl notebook has a memory leak. Using this code you can see a leak. > > #!/perl/bin/perl -W > use Tk; # example from pg. 576 of mastering Perl/Tk > $mw = MainWindow->new(); > # create the notebook and fill the window > $nb = $mw->NoteBook()->pack(-expand => 1, -fill => 'both'); > # Page 1 on the notebook, with button on the page > $p1 = $nb->add('page1', -label => 'Page 1'); > $p1->Button(-text => 'Cleck me!')->pack(); > # empty page 2 > $nb->add('page2', -label => 'Page 2'); > MainLoop; > > You must select the tabs multipal time and notice the memory used. > Memory will be eaten up.
Can you give the version number of your Tk and also the output of perl -V ? Thanks, Slaven
Subject: RE: [rt.cpan.org #18924] Memory leak
Date: Tue, 31 Oct 2006 07:06:24 -0500
To: <bug-Tk [...] rt.cpan.org>
From: "Roy Antoine" <black-eagle [...] comcast.net>
It occurred to me that I may have answered you incorrectly. To see the memory leak, you must re-run the program without a complete restart. That is, replot the same data with the plot option/tab and do not exit. The process must remain in memory with the same ID. Assume that there is an array containing data that you want to replot again and again. I tried this program using Windows 2000 and XP using 4 different versions of Perl. Roy Antoine ------------------------------------------ How smart you are depends on where you are standing at the moment. Burt Reynolds ------------------------------------------ Show quoted text
-----Original Message----- From: Slaven_Rezic via RT [mailto:bug-Tk@rt.cpan.org] Sent: Monday, October 23, 2006 7:02 PM To: black-eagle@comcast.net Subject: [rt.cpan.org #18924] Memory leak <URL: http://rt.cpan.org/Ticket/Display.html?id=18924 > On Tue Apr 25 20:07:39 2006, guest wrote:
> Perl notebook has a memory leak. Using this code you can see a leak. > > #!/perl/bin/perl -W > use Tk; # example from pg. 576 of mastering Perl/Tk > $mw = MainWindow->new(); > # create the notebook and fill the window > $nb = $mw->NoteBook()->pack(-expand => 1, -fill => 'both'); > # Page 1 on the notebook, with button on the page > $p1 = $nb->add('page1', -label => 'Page 1'); > $p1->Button(-text => 'Cleck me!')->pack(); > # empty page 2 > $nb->add('page2', -label => 'Page 2'); > MainLoop; > > You must select the tabs multipal time and notice the memory used. > Memory will be eaten up.
Can you give the version number of your Tk and also the output of perl -V ? Thanks, Slaven