[Insight-developers] purify errors on VC++

Lydia Ng lng@insightful.com
Wed, 18 Jul 2001 20:38:11 -0700


Hi All,

I just installed purify for the PC and ran it on the
itkBasicArchitectureTest.
I get whole bunch of "Uninitialized memory read in DName::DName"
errors - each time something is created using the ObjectFactory.
(see an example below)

Is this an ITK problem or VC++ problem?

Also there are 5 memory leaks (see log below)

GE people: do you these purify errors show on the other
test platforms?

Lydia


-----------------------------------------------------

[W] UMR: Uninitialized memory read in DName::DName(void) {1 occurrence}
    Reading 4 bytes from 0x00e6fb30 (4 bytes at 0x00e6fb30 uninitialized)
    Address 0x00e6fb30 points into a thread's stack
    Thread ID: 0x4d8
    Error location
        DName::DName(void) [MSVCRTD.dll]
        UnDecorator::getECSUDataType(void) [MSVCRTD.dll]
        UnDecorator::getBasicDataType(DName const&) [MSVCRTD.dll]
        UnDecorator::getPrimaryDataType(DName const&) [MSVCRTD.dll]
        UnDecorator::getDataType(DName *) [MSVCRTD.dll]
        UnDecorator::getDecoratedName(void) [MSVCRTD.dll]
        UnDecorator::operator char *(void) [MSVCRTD.dll]
        _unDName       [MSVCRTD.dll]
        type_info::name(void)const [typname.obj]
        itk::ObjectFactory<MemberCommand<AllEvents>::itk>::Create(void)
[itkObjectFactory.h:71]
                public:
                  static T::Pointer Create()
                  {
             =>     LightObject::Pointer ret =
ObjectFactory::CreateInstance(typeid(T).name());
                    return dynamic_cast<T*>(ret.GetPointer());
                  }
                };

--------------------------------
[W] MLK: Memory leak of 24 bytes from 1 block allocated in
itk::LightObject::new(UINT)
    Distribution of leaked blocks
    Allocation location
        new(UINT)      [new.cpp:23]
        itk::LightObject::new(UINT) [itkLightObject.cxx:225]
        main           [itkBasicArchitectureTest.cxx:132]
        mainCRTStartup [crtexe.c:338]
[W] MLK: Memory leak of 20 bytes from 1 block allocated in
itk::LightObject::new(UINT)
    Distribution of leaked blocks
    Allocation location
        new(UINT)      [new.cpp:23]
        itk::LightObject::new(UINT) [itkLightObject.cxx:225]
        itk::SimpleMemberCommand<ShowProgressObject>::New(void)
[itkCommand.h:281]
        main           [itkBasicArchitectureTest.cxx:176]
        mainCRTStartup [crtexe.c:338]
[W] MLK: Memory leak of 20 bytes from 1 block allocated in
itk::LightObject::new(UINT)
    Distribution of leaked blocks
    Allocation location
        new(UINT)      [new.cpp:23]
        itk::LightObject::new(UINT) [itkLightObject.cxx:225]
        itk::SimpleMemberCommand<StartEndEvent>::New(void)
[itkCommand.h:281]
        main           [itkBasicArchitectureTest.cxx:184]
        mainCRTStartup [crtexe.c:338]
[W] MLK: Memory leak of 20 bytes from 1 block allocated in
itk::LightObject::new(UINT)
    Distribution of leaked blocks
    Allocation location
        new(UINT)      [new.cpp:23]
        itk::LightObject::new(UINT) [itkLightObject.cxx:225]
        itk::SimpleMemberCommand<StartEndEvent>::New(void)
[itkCommand.h:281]
        main           [itkBasicArchitectureTest.cxx:190]
        mainCRTStartup [crtexe.c:338]
[W] MLK: Memory leak of 24 bytes from 1 block allocated in
itk::LightObject::new(UINT)
    Distribution of leaked blocks
    Allocation location
        new(UINT)      [new.cpp:23]
        itk::LightObject::new(UINT) [itkLightObject.cxx:225]
        itk::MemberCommand<AllEvents>::New(void) [itkCommand.h:193]
        main           [itkBasicArchitectureTest.cxx:197]
        mainCRTStartup [crtexe.c:338]