gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog libmedia/AudioDecoder.h libmedi...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog libmedia/AudioDecoder.h libmedi...
Date: Mon, 01 Oct 2007 08:51:19 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/10/01 08:51:19

Modified files:
        .              : ChangeLog 
        libmedia       : AudioDecoder.h MediaParser.h VideoDecoder.h 

Log message:
                * libmedia/: MediaParser.h, VideoDecoder.h, AudoDecoder.h:
                  virtual classes need virtual destructors, or destructors of
                  subclasses will not be invoked be deleting instances by
                  base class pointer !

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4486&r2=1.4487
http://cvs.savannah.gnu.org/viewcvs/gnash/libmedia/AudioDecoder.h?cvsroot=gnash&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/gnash/libmedia/MediaParser.h?cvsroot=gnash&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/gnash/libmedia/VideoDecoder.h?cvsroot=gnash&r1=1.2&r2=1.3

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4486
retrieving revision 1.4487
diff -u -b -r1.4486 -r1.4487
--- ChangeLog   1 Oct 2007 08:17:52 -0000       1.4486
+++ ChangeLog   1 Oct 2007 08:51:18 -0000       1.4487
@@ -1,5 +1,12 @@
 2007-09-30 Sandro Santilli <address@hidden>
 
+       * libmedia/: MediaParser.h, VideoDecoder.h, AudoDecoder.h:
+         virtual classes need virtual destructors, or destructors of
+         subclasses will not be invoked be deleting instances by
+         base class pointer !
+
+2007-09-30 Sandro Santilli <address@hidden>
+
        * testsuite/misc-ming.all/opcode_guard_test.c: add xtotals() call.
        * testsuite/actionscript.all/dejagnu_so_init.as: set and invoke
          utility functions from/to _root. Fixes some scope chain problems

Index: libmedia/AudioDecoder.h
===================================================================
RCS file: /sources/gnash/gnash/libmedia/AudioDecoder.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- libmedia/AudioDecoder.h     28 Sep 2007 10:49:10 -0000      1.2
+++ libmedia/AudioDecoder.h     1 Oct 2007 08:51:19 -0000       1.3
@@ -31,7 +31,9 @@
        
 public:
        AudioDecoder() {}
-       ~AudioDecoder() {}
+
+       // virtual classes need a virtual destructor !
+       virtual ~AudioDecoder() {}
 
        /// Sets up the decoder.
        //

Index: libmedia/MediaParser.h
===================================================================
RCS file: /sources/gnash/gnash/libmedia/MediaParser.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- libmedia/MediaParser.h      28 Sep 2007 10:49:10 -0000      1.2
+++ libmedia/MediaParser.h      1 Oct 2007 08:51:19 -0000       1.3
@@ -179,6 +179,13 @@
        _stream(stream)
        {}
 
+       // Classes with virtual methods (virtual classes)
+       // must have a virtual destructor, or the destructors
+       // of subclasses will never be invoked, tipically resulting
+       // in memory leaks..
+       //
+       virtual ~MediaParser() {};
+
        /// Used to parse the next media frame in the stream and return it
        //
        /// @return a pointer to a MediaFrame in which the undecoded frame data 
is.

Index: libmedia/VideoDecoder.h
===================================================================
RCS file: /sources/gnash/gnash/libmedia/VideoDecoder.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- libmedia/VideoDecoder.h     28 Sep 2007 10:49:10 -0000      1.2
+++ libmedia/VideoDecoder.h     1 Oct 2007 08:51:19 -0000       1.3
@@ -31,7 +31,9 @@
        
 public:
        VideoDecoder() {}
-       ~VideoDecoder() {}
+
+       // virtual classes need a virtual destructor !
+       virtual ~VideoDecoder() {}
 
        /// Sets up the decoder.
        //




reply via email to

[Prev in Thread] Current Thread [Next in Thread]