Log4cxx
  1. Log4cxx
  2. LOGCXX-301

MSVC 8.0, log4cxx from dll = memory leaks messages

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 0.11.0
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:
      MSVC 8.0 SP1, MFC, log4cxx from SVN, r673295

      Description

      Steps:

      1. Create mfc exe, use log4cxx:

      PropertyConfigurator::configure(LOG4CXX_FILE( path ));
      LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );

      OK, no memory leak

      2. Create dll, use log4cxx:

      extern "C" __declspec ( dllexport )
      void testlog()
      {
      LOG4CXX_INFO ( Logger::getRootLogger(), _T ( "logdlltest.dll testlog()" ) );
      }

      3. from exe call testlog():

      PropertyConfigurator::configure(LOG4CXX_FILE( path ));
      LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );
      testlog();

      4. Run exe (Debug configuration) and see after finish in Output MSVC 316 memory leak messages

      attachment - Test solution (exe and dll)

      1. log4cxxleaks.zip
        1.01 MB
        Alexey Kirjushkin

        Activity

        Alexey Kirjushkin created issue -
        Alexey Kirjushkin made changes -
        Field Original Value New Value
        Attachment log4cxxleaks.zip [ 12385361 ]
        Alexey Kirjushkin made changes -
        Description Steps:

        1. Create mfc exe, use log4cxx:

        PropertyConfigurator::configure(LOG4CXX_FILE( path ));
        LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );

        OK, no memory leak

        2. Create dll, use log4cxx:

        extern "C" __declspec ( dllexport )
        void testlog()
        {
        LOG4CXX_INFO ( Logger::getRootLogger(), _T ( "logdlltest.dll testlog()" ) );
        }

        3. from exe call testlog():

        PropertyConfigurator::configure(LOG4CXX_FILE( path ));
        LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );
        testlog();

        4. Run exe (Debug configuration) and see after finish in Output MSVC 316 (!) memory leak messages

        Test solution - http://files.rsdn.ru/82/log4cxxleaks.zip
        Steps:

        1. Create mfc exe, use log4cxx:

        PropertyConfigurator::configure(LOG4CXX_FILE( path ));
        LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );

        OK, no memory leak

        2. Create dll, use log4cxx:

        extern "C" __declspec ( dllexport )
        void testlog()
        {
        LOG4CXX_INFO ( Logger::getRootLogger(), _T ( "logdlltest.dll testlog()" ) );
        }

        3. from exe call testlog():

        PropertyConfigurator::configure(LOG4CXX_FILE( path ));
        LOG4CXX_INFO ( Logger::getRootLogger(), _T("testleaks.exe _tmain") );
        testlog();

        4. Run exe (Debug configuration) and see after finish in Output MSVC 316 (!) memory leak messages

        attachment - Test solution (exe and dll)

          People

          • Assignee:
            Curt Arnold
            Reporter:
            Alexey Kirjushkin
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development