RE: [ROOT] exception on delete in win32 debug dll.

From: Faine, Valeri (fine@bnl.gov)
Date: Wed Oct 16 2002 - 04:59:59 MEST


He Ed, 
Can you debug your problem?

 To do that:

   1. START root session
   2. From MS Studio say:
      "Build" -> "Start debug" -> "Attach to process"
   3. Go ahead with your DLL. It should catch the exceptions and you
will see        the "call stack" (probably)

Be aware you should see as many as 3 (or 4) call stacks. You may want to
investigate all of them. To do that you may select the target thread via

"Debug" ->Threads" menu.
Make sure you did not link against of %ROOTSYS%/lib/libNew.lib library.

Hope this helps.
                          Valeri




> -----Original Message-----
> From: owner-roottalk@pcroot.cern.ch
[mailto:owner-roottalk@pcroot.cern.ch]
> On Behalf Of Ed Oltman
> Sent: Tuesday, October 15, 2002 6:14 PM
> To: Roottalk@Pcroot. Cern. Ch
> Subject: [ROOT] exception on delete in win32 debug dll.
> 
> Hello,
>  I am using root v 3.03/9 on win2k.   I'm using root with a set of
> compiled
> classes in a dll - I'm using rootcint and a makefile that is on
> makefile.win32.
> Everything on the root end seems to work fine (yay!)  However, I do
have
> bugs
> in my code and need to use the debugger.  I use the VC++ environment
to
> build.
> 
> 
> Everything works fine until I try to delete an object that was created
by
> root:
> I get an exception -- its some sort of memory management issue. (Note
when
> I
> build my debug version of my dll, I use the non-debug multithreaded
> version
> of
> the runtime library (LIBCMT.LIB) just to make sure the there is no
heap
> conflict.
> [The object I tried to delete is a TH1F* that was read in with a
> customized
> streamer
> using:
> 
>       R__b >> m_pDeltaTof;
> 
> At the time I delete m_pDeltaTof, I can examine it from the debugger -
its
> intact -
> its got a title, name, bins, bin contents, etc..]
> 
> So, I decided to build a debug version of root from the tar file using
> cygwin tools.
> Here's what I do to build it (in cygwin bash)
> 
> 
> export ROOTBUILD='debug'
> ./configure win32
> make
> 
> Then, I tried to use the libraries and root.exe that I built but does
not
> help - I still
> get the same exception when I delete an object that root created.  Any
> help
> would
> be greatly appreciated..
> 
> Ed



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:14 MET