[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-video-cvs
Subject:    [Video-cvs] sitelib sitetext.h,1.5,1.6
From:       ehodge () helixcommunity ! org
Date:       2006-04-05 18:03:24
[Download RAW message or body]

Update of /cvsroot/video/sitelib
In directory cvs02.internal.helixcommunity.org:/tmp/cvs-serv29177

Modified Files:
	sitetext.h 
Log Message:
At about 40 seconds into playback, a timer causes
hxmedpltfm.dll's Plugin2Handler::UnloadDeadDLLs()
to get called to get the plugin2Handler to see if
there are any DLLs that are loaded that have a
zero use count.  If it finds any, it unloads each.
Before the proposed changes in the below diff,
vidsite.dll's base counting object's m_lNumObjects
was 0 when this happened and it thus got unloaded
at around 40 seconds.  This caused a crash
accessing a no-longer-valid memory space whenever
any site user tried to do anything with a site
thereafter.

Solution here is to have all classes that
implement an interface in video/sitelib inherit
from CHXBaseCountingObject.  That way, the base
counting object's count goes up for users of those
vidsite.dll objects (IHXSite, ...etc.)

Reviewed by: nhart@real.com


Index: sitetext.h
===================================================================
RCS file: /cvsroot/video/sitelib/sitetext.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- sitetext.h	11 Mar 2005 19:58:06 -0000	1.5
+++ sitetext.h	5 Apr 2006 18:03:21 -0000	1.6
@@ -50,11 +50,13 @@
 #ifndef _SITETEXT_H_
 #define _SITETEXT_H_
 
+#include "baseobj.h"
 
 #if !defined(_WINDOWS)
 class CHXSiteStatusText : public IHXSiteUser
+                        , public CHXBaseCountingObject
 #else
-class CHXSiteStatusText
+class CHXSiteStatusText : public CHXBaseCountingObject
 #endif
 {
 public:



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic