Irrlicht 1.8. Application not closing and memory leak...

You discovered a bug in the engine, and you are sure that it is not a problem of your code? Just post it in here. Please read the bug posting guidelines first.
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Irrlicht 1.8. Application not closing and memory leak...

Post by christianclavet »

Hi, This could be my application, but before I was using 1.7.3 and the application did not do this.

When I try to close my application, (debug mode using IRRlicht dll debug version). The main window (containing the opengl context) close, but the console window does not and I have to manually close, it. Then MSVC tell me there is a memory leak warning:

From what I read, it seem to come from: COpenGLDriver.cpp. But I'm not really sure. The current application is running irrlicht 1.8.0 in OpenGL on Windows 7.0.

Another thing to note, I'm opening a NULL driver first to get the configuration files, open the openGL with the configuration and close the null device. (Worked perfectly under Irrlicht 1.7.3)

What I find strange is that the "dumping" refer to Irrlicht source files not the files I'm using in my project.
Detected memory leaks!
Dumping objects ->
{963064} normal block at 0x0752B3F8, 64 bytes long.
Data: < ? > 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00
{963063} normal block at 0x0807CBD8, 64 bytes long.
Data: < ? > 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00
{963062} normal block at 0x0834B888, 64 bytes long.
Data: < ? > 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00
{963061} normal block at 0x0834B988, 64 bytes long.
Data: < ? > 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00
{962752} normal block at 0x08268750, 696 bytes long.
Data: < ?> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F
.\CImage.cpp(57) : {737261} client block at 0x0838D008, subtype 0, 240000 bytes long.
Data: <,sY &mS iO #mS > 2C 73 59 FF 26 6D 53 FF 20 69 4F FF 23 6D 53 FF
.\CNullDriver.cpp(1414) : {737260} client block at 0x0814FA78, subtype 0, 48 bytes long.
Data: < (K (K 8 , > 80 28 4B 10 EC 28 4B 10 08 D0 38 08 2C 01 00 00
{737259} normal block at 0x0814F778, 80 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{737257} normal block at 0x0814F658, 80 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {737256} client block at 0x0814F5B0, subtype 0, 108 bytes long.
Data: < "K "K X P > 9C 22 4B 10 E0 22 4B 10 58 F6 14 08 50 00 00 00
{737153} normal block at 0x081BFA78, 1 bytes long.
Data: < > 00
{737151} normal block at 0x0838C030, 12 bytes long.
Data: <WorldMatrix > 57 6F 72 6C 64 4D 61 74 72 69 78 00
{737148} normal block at 0x080E6DF8, 11 bytes long.
Data: <ViewMatrix > 56 69 65 77 4D 61 74 72 69 78 00
{737145} normal block at 0x080E7080, 11 bytes long.
Data: <ProjMatrix > 50 72 6F 6A 4D 61 74 72 69 78 00
{737142} normal block at 0x0814A4E8, 14 bytes long.
Data: <DistanceScale > 44 69 73 74 61 6E 63 65 53 63 61 6C 65 00
{737139} normal block at 0x081BF9E8, 80 bytes long.
Data: < OF > E8 A4 14 08 0E 00 00 00 0E 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {737137} client block at 0x0838C470, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{737121} normal block at 0x080E7AF8, 1 bytes long.
Data: < > 00
{737119} normal block at 0x080E79B8, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{737116} normal block at 0x08269CF0, 20 bytes long.
Data: < y OF > B8 79 0E 08 09 00 00 00 09 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {737114} client block at 0x0814FD60, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{737010} normal block at 0x0814EBC0, 1 bytes long.
Data: < > 00
{737008} normal block at 0x0814F910, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{737005} normal block at 0x0814EDB8, 13 bytes long.
Data: <EdgeDarkness > 45 64 67 65 44 61 72 6B 6E 65 73 73 00
{737002} normal block at 0x0814EAB8, 40 bytes long.
Data: < OF > B8 ED 14 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {737000} client block at 0x0814FCD0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{736719} normal block at 0x0814F8D0, 1 bytes long.
Data: < > 00
{736717} normal block at 0x0814F9A0, 9 bytes long.
Data: <texture2 > 74 65 78 74 75 72 65 32 00
{736714} normal block at 0x0814F958, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{736711} normal block at 0x0814FB78, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{736708} normal block at 0x0814F858, 60 bytes long.
Data: <x OF > 78 FB 14 08 09 00 00 00 09 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {736706} client block at 0x080E7B88, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{736551} normal block at 0x0814FC30, 1 bytes long.
Data: < > 00
{736549} normal block at 0x0838C078, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{736546} normal block at 0x0814FC80, 13 bytes long.
Data: <BufferHeight > 42 75 66 66 65 72 48 65 69 67 68 74 00
{736543} normal block at 0x0814FBC8, 40 bytes long.
Data: < OF > 80 FC 14 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {736541} client block at 0x0814FAF0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{736377} normal block at 0x0814F468, 1 bytes long.
Data: < > 00
{736375} normal block at 0x0814E988, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{736372} normal block at 0x0838C500, 12 bytes long.
Data: <BufferWidth > 42 75 66 66 65 72 57 69 64 74 68 00
{736369} normal block at 0x0814F548, 40 bytes long.
Data: < 8 OF > 00 C5 38 08 0C 00 00 00 0C 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {736367} client block at 0x0814F3E0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{736202} normal block at 0x0814A0B8, 1 bytes long.
Data: < > 00
{736200} normal block at 0x082698C0, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{736197} normal block at 0x0838C388, 20 bytes long.
Data: < & OF > C0 98 26 08 09 00 00 00 09 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {736195} client block at 0x0814F4C0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{735916} normal block at 0x082695A8, 1 bytes long.
Data: < > 00
{735914} normal block at 0x0814EA18, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{735911} normal block at 0x0814EA68, 15 bytes long.
Data: <SampleStrength > 53 61 6D 70 6C 65 53 74 72 65 6E 67 74 68 00
{735908} normal block at 0x0814E9D0, 11 bytes long.
Data: <SampleDist > 53 61 6D 70 6C 65 44 69 73 74 00
{735905} normal block at 0x0814E910, 60 bytes long.
Data: < OF > D0 E9 14 08 0B 00 00 00 0B 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {735903} client block at 0x0814FFA8, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{735695} normal block at 0x0838C6F8, 1 bytes long.
Data: < > 00
{735693} normal block at 0x0838C428, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{735690} normal block at 0x0838C3D8, 13 bytes long.
Data: <Desaturation > 44 65 73 61 74 75 72 61 74 69 6F 6E 00
{735687} normal block at 0x0838C320, 40 bytes long.
Data: < 8 OF > D8 C3 38 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {735685} client block at 0x0814BBB8, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{735452} normal block at 0x0814C4F0, 1 bytes long.
Data: < > 00
{735450} normal block at 0x0814FF60, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{735447} normal block at 0x0814FF18, 10 bytes long.
Data: <Sharpness > 53 68 61 72 70 6E 65 73 73 00
{735444} normal block at 0x0814FED0, 6 bytes long.
Data: <Shake > 53 68 61 6B 65 00
{735441} normal block at 0x0814FE88, 12 bytes long.
Data: <RandomValue > 52 61 6E 64 6F 6D 56 61 6C 75 65 00
{735438} normal block at 0x0814FDF8, 80 bytes long.
Data: < OF > 88 FE 14 08 0C 00 00 00 0C 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {735436} client block at 0x0838C198, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{735093} normal block at 0x0814EB80, 1 bytes long.
Data: < > 00
{735091} normal block at 0x0814ED70, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{735088} normal block at 0x0814ED28, 7 bytes long.
Data: <Speed2 > 53 70 65 65 64 32 00
{735085} normal block at 0x0814ECE0, 6 bytes long.
Data: <Speed > 53 70 65 65 64 00
{735082} normal block at 0x0814EC98, 7 bytes long.
Data: <PulseE > 50 75 6C 73 65 45 00
{735079} normal block at 0x0814EC50, 6 bytes long.
Data: <Pulse > 50 75 6C 73 65 00
{735076} normal block at 0x0814EC08, 12 bytes long.
Data: <ElapsedTime > 45 6C 61 70 73 65 64 54 69 6D 65 00
{735073} normal block at 0x0838C628, 8 bytes long.
Data: <CenterY > 43 65 6E 74 65 72 59 00
{735070} normal block at 0x0838C9E8, 8 bytes long.
Data: <CenterX > 43 65 6E 74 65 72 58 00
{735067} normal block at 0x0838C548, 160 bytes long.
Data: < 8 OF > E8 C9 38 08 08 00 00 00 08 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {735065} client block at 0x0838C858, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{734797} normal block at 0x0814C538, 1 bytes long.
Data: < > 00
{734795} normal block at 0x0838CB08, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{734792} normal block at 0x0838CAC0, 7 bytes long.
Data: <ColorR > 43 6F 6C 6F 72 52 00
{734789} normal block at 0x0838CA78, 7 bytes long.
Data: <ColorG > 43 6F 6C 6F 72 47 00
{734786} normal block at 0x0838CA30, 7 bytes long.
Data: <ColorB > 43 6F 6C 6F 72 42 00
{734783} normal block at 0x0838C958, 80 bytes long.
Data: <0 8 OF > 30 CA 38 08 07 00 00 00 07 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {734781} client block at 0x0838CF08, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{734512} normal block at 0x082699B0, 1 bytes long.
Data: < > 00
{734510} normal block at 0x0838C150, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{734507} normal block at 0x0838CD38, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{734504} normal block at 0x0838CCF0, 6 bytes long.
Data: <Speed > 53 70 65 65 64 00
{734501} normal block at 0x082695E8, 12 bytes long.
Data: <ElapsedTime > 45 6C 61 70 73 65 64 54 69 6D 65 00
{734498} normal block at 0x0838CCA0, 15 bytes long.
Data: <EffectStrength > 45 66 66 65 63 74 53 74 72 65 6E 67 74 68 00
{734495} normal block at 0x0838CC00, 100 bytes long.
Data: < 8 OF > A0 CC 38 08 0F 00 00 00 0F 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {734493} client block at 0x0838CB78, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{734300} normal block at 0x082699F8, 1 bytes long.
Data: < > 00
{734298} normal block at 0x0814BD48, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{734295} normal block at 0x0838C748, 13 bytes long.
Data: <BufferHeight > 42 75 66 66 65 72 48 65 69 67 68 74 00
{734292} normal block at 0x0838C690, 40 bytes long.
Data: <H 8 OF > 48 C7 38 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {734290} client block at 0x0838CE78, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{734126} normal block at 0x00FDABA8, 1 bytes long.
Data: < > 00
{734124} normal block at 0x0838CE30, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{734121} normal block at 0x0838CDE8, 12 bytes long.
Data: <BufferWidth > 42 75 66 66 65 72 57 69 64 74 68 00
{734118} normal block at 0x0838CD80, 40 bytes long.
Data: < 8 OF > E8 CD 38 08 0C 00 00 00 0C 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {734116} client block at 0x0838C0C0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{733952} normal block at 0x081495C0, 1 bytes long.
Data: < > 00
{733950} normal block at 0x00FDAD90, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{733947} normal block at 0x0814A5B8, 20 bytes long.
Data: < OF > 90 AD FD 00 09 00 00 00 09 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {733945} client block at 0x0838C7D0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
.\CImage.cpp(57) : {733744} client block at 0x08190088, subtype 0, 65536 bytes long.
Data: <1 U M - > 31 00 9F FF 1C 00 55 FF 4D 00 0F FF 2D 00 00 FF
.\CNullDriver.cpp(1414) : {733743} client block at 0x0814CA78, subtype 0, 48 bytes long.
Data: < (K (K > 80 28 4B 10 EC 28 4B 10 88 00 19 08 80 00 00 00
{733742} normal block at 0x0814C458, 86 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{733740} normal block at 0x0814C0A8, 86 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {733739} client block at 0x0814C9D0, subtype 0, 108 bytes long.
Data: < "K "K V > 9C 22 4B 10 E0 22 4B 10 A8 C0 14 08 56 00 00 00
{733585} normal block at 0x08051C08, 1 bytes long.
Data: < > 00
{733583} normal block at 0x0814C378, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{733580} normal block at 0x0814C330, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{733577} normal block at 0x0814C290, 12 bytes long.
Data: <ElapsedTime > 45 6C 61 70 73 65 64 54 69 6D 65 00
{733574} normal block at 0x0814C2E0, 15 bytes long.
Data: <EffectStrength > 45 66 66 65 63 74 53 74 72 65 6E 67 74 68 00
{733571} normal block at 0x0814C248, 11 bytes long.
Data: <Brightness > 42 72 69 67 68 74 6E 65 73 73 00
{733568} normal block at 0x0814C1A8, 100 bytes long.
Data: <H OF > 48 C2 14 08 0B 00 00 00 0B 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {733566} client block at 0x0814CAF0, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
.\CImage.cpp(57) : {733400} client block at 0x0834BFF0, subtype 0, 262144 bytes long.
Data: < h( Wu > A9 68 28 FF 57 75 B3 FF FE B0 C1 FF D9 08 00 FF
.\CNullDriver.cpp(1414) : {733399} client block at 0x0814C8A0, subtype 0, 48 bytes long.
Data: < (K (K 4 > 80 28 4B 10 EC 28 4B 10 F0 BF 34 08 00 01 00 00
{733398} normal block at 0x0814C938, 86 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{733396} normal block at 0x08149170, 86 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {733395} client block at 0x0814C7F8, subtype 0, 108 bytes long.
Data: < "K "K p V > 9C 22 4B 10 E0 22 4B 10 70 91 14 08 56 00 00 00
{733195} normal block at 0x08269A40, 1 bytes long.
Data: < > 00
{733193} normal block at 0x0814C7B0, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{733190} normal block at 0x0814C768, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{733187} normal block at 0x0814C720, 7 bytes long.
Data: <Speed2 > 53 70 65 65 64 32 00
{733184} normal block at 0x0814C6D8, 7 bytes long.
Data: <Speed1 > 53 70 65 65 64 31 00
{733181} normal block at 0x0814C688, 17 bytes long.
Data: <ScratchIntensity> 53 63 72 61 74 63 68 49 6E 74 65 6E 73 69 74 79
{733178} normal block at 0x072E8370, 3 bytes long.
Data: <IS > 49 53 00
{733175} normal block at 0x0814C640, 12 bytes long.
Data: <ElapsedTime > 45 6C 61 70 73 65 64 54 69 6D 65 00
{733172} normal block at 0x0814C578, 140 bytes long.
Data: <@ OF > 40 C6 14 08 0C 00 00 00 0C 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {733170} client block at 0x0814C018, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
.\CImage.cpp(57) : {733004} client block at 0x0CC60040, subtype 0, 1048576 bytes long.
Data: < x z ~z }y > FC 80 78 FF FC 80 7A FF FC 7E 7A FF FB 7D 79 FF
.\CNullDriver.cpp(1414) : {733003} client block at 0x08269C38, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 40 00 C6 0C 00 02 00 00
{733002} normal block at 0x08269640, 85 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{733000} normal block at 0x08269510, 85 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {732999} client block at 0x08269B90, subtype 0, 108 bytes long.
Data: < "K "K & U > 9C 22 4B 10 E0 22 4B 10 10 95 26 08 55 00 00 00
{732874} normal block at 0x0814A220, 1 bytes long.
Data: < > 00
{732872} normal block at 0x0814BFD0, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{732869} normal block at 0x0814BF88, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{732866} normal block at 0x0814BC50, 15 bytes long.
Data: <EffectStrength > 45 66 66 65 63 74 53 74 72 65 6E 67 74 68 00
{732863} normal block at 0x0814BF10, 60 bytes long.
Data: <P OF > 50 BC 14 08 0F 00 00 00 0F 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {732861} client block at 0x082696D8, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{732603} normal block at 0x081BFB08, 1 bytes long.
Data: < > 00
{732601} normal block at 0x082694C8, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{732598} normal block at 0x08269480, 11 bytes long.
Data: <Threshhold > 54 68 72 65 73 68 68 6F 6C 64 00
{732595} normal block at 0x08269438, 10 bytes long.
Data: <NumTilesY > 4E 75 6D 54 69 6C 65 73 59 00
{732592} normal block at 0x0814BD90, 10 bytes long.
Data: <NumTilesX > 4E 75 6D 54 69 6C 65 73 58 00
{732589} normal block at 0x0814BCB8, 80 bytes long.
Data: < OF > 90 BD 14 08 0A 00 00 00 0A 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {732587} client block at 0x08269928, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{732379} normal block at 0x080E8290, 1 bytes long.
Data: < > 00
{732377} normal block at 0x08149390, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{732374} normal block at 0x08149EF8, 9 bytes long.
Data: <Contrast > 43 6F 6E 74 72 61 73 74 00
{732371} normal block at 0x0814A070, 12 bytes long.
Data: <BufferWidth > 42 75 66 66 65 72 57 69 64 74 68 00
{732368} normal block at 0x0814AE50, 13 bytes long.
Data: <BufferHeight > 42 75 66 66 65 72 48 65 69 67 68 74 00
{732365} normal block at 0x0814BE80, 80 bytes long.
Data: <P OF > 50 AE 14 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {732363} client block at 0x0814BDF8, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{732144} normal block at 0x080E68C8, 1 bytes long.
Data: < > 00
{732142} normal block at 0x00FDA4F0, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{732139} normal block at 0x08147BD8, 12 bytes long.
Data: <BufferWidth > 42 75 66 66 65 72 57 69 64 74 68 00
{732136} normal block at 0x0814AAE8, 13 bytes long.
Data: <BufferHeight > 42 75 66 66 65 72 48 65 69 67 68 74 00
{732133} normal block at 0x08269B18, 60 bytes long.
Data: < OF > E8 AA 14 08 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {732131} client block at 0x08269A90, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{731863} normal block at 0x082682C8, 1 bytes long.
Data: < > 00
{731861} normal block at 0x08269878, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{731858} normal block at 0x08269830, 10 bytes long.
Data: <NumColors > 4E 75 6D 43 6F 6C 6F 72 73 00
{731855} normal block at 0x082697E8, 6 bytes long.
Data: <Gamma > 47 61 6D 6D 61 00
{731852} normal block at 0x08149B70, 60 bytes long.
Data: < & OF > E8 97 26 08 06 00 00 00 06 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {731850} client block at 0x08269760, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{731667} normal block at 0x08051690, 1 bytes long.
Data: < > 00
{731665} normal block at 0x08149348, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{731662} normal block at 0x080E8678, 20 bytes long.
Data: <H OF > 48 93 14 08 09 00 00 00 09 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {731660} client block at 0x00FDB018, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
.\CImage.cpp(57) : {731504} client block at 0x0D020040, subtype 0, 3880896 bytes long.
Data: < > 00 00 00 FF 00 00 00 FF 00 00 00 FF 00 00 00 FF
.\CNullDriver.cpp(1414) : {731503} client block at 0x080E8850, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 40 00 02 0D D8 03 00 00
{731502} normal block at 0x082693A0, 85 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{731500} normal block at 0x0814AA50, 85 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {731499} client block at 0x081492A0, subtype 0, 108 bytes long.
Data: < "K "K P U > 9C 22 4B 10 E0 22 4B 10 50 AA 14 08 55 00 00 00
.\CImage.cpp(57) : {731412} client block at 0x0CB50040, subtype 0, 1048576 bytes long.
Data: < k 4 Y > 00 00 16 FF 20 6B C4 FF 00 00 00 FF 34 9B 59 FF
.\CNullDriver.cpp(1414) : {731411} client block at 0x08149CC0, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 40 00 B5 0C 00 02 00 00
{731410} normal block at 0x08149208, 86 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{731408} normal block at 0x081490D8, 86 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {731407} client block at 0x0814ADA8, subtype 0, 108 bytes long.
Data: < "K "K V > 9C 22 4B 10 E0 22 4B 10 D8 90 14 08 56 00 00 00
{731153} normal block at 0x080E8A80, 1 bytes long.
Data: < > 00
{731151} normal block at 0x0814AD60, 9 bytes long.
Data: <texture2 > 74 65 78 74 75 72 65 32 00
{731148} normal block at 0x080E7D60, 9 bytes long.
Data: <texture1 > 74 65 78 74 75 72 65 31 00
{731145} normal block at 0x08149E58, 9 bytes long.
Data: <texture0 > 74 65 78 74 75 72 65 30 00
{731142} normal block at 0x080E7D10, 13 bytes long.
Data: <VisionColorR > 56 69 73 69 6F 6E 43 6F 6C 6F 72 52 00
{731139} normal block at 0x0814A8D8, 13 bytes long.
Data: <VisionColorG > 56 69 73 69 6F 6E 43 6F 6C 6F 72 47 00
{731136} normal block at 0x08149E08, 13 bytes long.
Data: <VisionColorB > 56 69 73 69 6F 6E 43 6F 6C 6F 72 42 00
{731133} normal block at 0x080E53F8, 12 bytes long.
Data: <RandomValue > 52 61 6E 64 6F 6D 56 61 6C 75 65 00
{731130} normal block at 0x00FDA4A0, 14 bytes long.
Data: <NoiseStrength > 4E 6F 69 73 65 53 74 72 65 6E 67 74 68 00
{731127} normal block at 0x08149570, 19 bytes long.
Data: <LuminanceThresho> 4C 75 6D 69 6E 61 6E 63 65 54 68 72 65 73 68 6F
{731124} normal block at 0x080E8A30, 19 bytes long.
Data: <ColorAmplificati> 43 6F 6C 6F 72 41 6D 70 6C 69 66 69 63 61 74 69
{731121} normal block at 0x080E52F0, 200 bytes long.
Data: <0 OF > 30 8A 0E 08 13 00 00 00 13 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {731119} client block at 0x081497E8, subtype 0, 72 bytes long.
Data: < J J J 8} > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D FD 00
{730926} normal block at 0x080E8170, 1 bytes long.
Anyone can help? I'm doing exit(0) to close the app, after the device->closeDevice() and device->drop(), but still the console window is there and the app is still there, until I close the console window.
Last edited by christianclavet on Sat Nov 10, 2012 3:11 am, edited 2 times in total.
Nadro
Posts: 1648
Joined: Sun Feb 19, 2006 9:08 am
Location: Warsaw, Poland

Re: Irrlicht 1.8. Apllication not closing and memory leak...

Post by Nadro »

Please use this combination:

Code: Select all

device->closeDevice();
device->run();
device->drop();
It will solve Your problem.
Library helping with network requests, tasks management, logger etc in desktop and mobile apps: https://github.com/GrupaPracuj/hermes
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Re: Irrlicht 1.8. Apllication not closing and memory leak...

Post by christianclavet »

Thanks Nadro. Tried it and it still doesnt close the console.

Here the full close on closing:

Code: Select all

void App::shutdown()
{
    // Stuff to do when the device is closed.
    SoundManager::getInstance()->stopEngine();
    cleanWorkspace();
    DynamicObjectsManager::getInstance()->clean(true);
    device->closeDevice();
    device->run();
    device->drop();
    exit(0);
}
Getting the "desktop" resolution this way at initialization (part of "loadConfig"):
if (resizable && fullScreen)
{
IrrlichtDevice * tempdevice = createDevice(EDT_NULL,dimension2d<u32>(640,480), 16, false, false, false, 0);
screensize = tempdevice->getVideoModeList()->getDesktopResolution();
tempdevice->closeDevice();
tempdevice->drop();
}

Here fully opening the device:

Code: Select all

void App::setupDevice(IrrlichtDevice* IRRdevice)
{
 
    loadConfig();
 
    if (!IRRdevice)
    {
        device = createDevice(EDT_OPENGL, screensize, 32, fullScreen, false, false, 0);
        this->device->setResizable(resizable);
        device->setWindowCaption(L"IrrRPG Builder - Alpha release 0.21 (october 2012)");
    } else
        device = IRRdevice;
 
    driver = device->getVideoDriver();
    smgr = device->getSceneManager();
    guienv = device->getGUIEnvironment();
 
    device->setEventReceiver(EventReceiver::getInstance());
    timer = device->getTimer()->getRealTime();
    timer2 = device->getTimer()->getRealTime();
    timer3 = device->getTimer()->getRealTime();
    LANGManager::getInstance()->setDefaultLanguage(language);
    quickUpdate();
 
}
As another note, I executed the application OUTside MSVC, the console windows seem to stay there but close by itself (surely doing a memory leak).
Nadro
Posts: 1648
Joined: Sun Feb 19, 2006 9:08 am
Location: Warsaw, Poland

Re: Irrlicht 1.8. Apllication not closing and memory leak...

Post by Nadro »

Hmmm... Please put a "run" method for a closing tempdevice too:

Code: Select all

tempdevice->closeDevice();
tempdevice->run();
tempdevice->drop();
Maybe it will help.
Library helping with network requests, tasks management, logger etc in desktop and mobile apps: https://github.com/GrupaPracuj/hermes
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by CuteAlien »

Which VS are you using? And do you have those problems as well when running the Irrlicht examples? Please also take a look at the log-messages in case there are any warnings or so.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by christianclavet »

VS 2008.
I don't see any warning. All of the example seem to be good. As I've said, previously, the current code I had worked and was terminating correctly under 1.7.3. Once I had messages like that that pointed me to irrKLang, replaced it for the new version and the leak was gone. (using Irrklang 1.4 in the app). All the messages are pointing to theses files:
CNullDriver.cpp
COpenGLDriver.cpp
CImage.cpp

Humm, looking more, it seem that it could perhaps affect RdR PostFX framework that was in (using untouched shaders), I have also theses "items" and I don't think theses belong to Irrlicht:

WorldMatrix
ViewMatrix
texture0
texture1
texture2
ColorR
ColorG
ColorB
Contrast
BufferWidth
NoiseStrength
LuminanceThresho
...

These seem to report to shaders, could it be that the PostFX Framework, make Irrlicht leak because it set up the shader improperly? (as of 1.8.0 there are changes there)
I'll try to disable it to see if it change something and report back, thanks!

Still see the problem in the demo, when set in full screen, when closing the "demo", my windows screen is set at 800x600. Tried in windowed mode and it's ok. So for now, using full screen mode will change the desktop size.
robmar
Posts: 1125
Joined: Sun Aug 14, 2011 11:30 pm

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by robmar »

I´m seeing a massive 12 MB memory leak when using the opengl driver.

Using D3D driver there is no leak.

Even if I just create the Irr device and load nothing at all, not even a texture or cube, after correctly deleting irr device 12 MB never returns!

Its been like this for a while now, at least since 1.7.2.
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by christianclavet »

VS 2008.
I don't see any warnings. All of the examples seem to be good. As I've said, the current code I had worked and was terminating correctly under 1.7.3. Once I did had leak messages like that that pointed me to irrKLang, replaced it for the new version (1.4) and the leak was gone under 1.7.3 (Not seen any leak message, and all thread were reporting a exit code 0.

Robmar, what were you using to see leaks in OpenGL with 1.7.2? That just happened once I switched the library to 1.8.. Irrlicht 1.7.2 and Irrlicht 1.7.3 were not reporting leaks for me.

Now in 1.8.0, all the messages are pointing to theses files:
CNullDriver.cpp
COpenGLDriver.cpp
CImage.cpp

Humm, looking more, it seem that it could perhaps affect RdR PostFX framework that was in (using untouched shaders), I have also theses "items" and I don't think theses belong to Irrlicht:

WorldMatrix
ViewMatrix
texture0
texture1
texture2
ColorR
ColorG
ColorB
Contrast
BufferWidth
NoiseStrength
LuminanceThresho
...

These seem to report to shaders, could it be that the PostFX Framework, make Irrlicht leak because it set up the shader improperly? (as of 1.8.0 there are changes there)
I'll try to disable it to see if it change something and report back, thanks!

Still see the problem in the demo, when set in full screen, when closing the "demo", my windows screen is set at 800x600. Tried in windowed mode and it's ok. So for now, using full screen mode will change the desktop size.

[EDIT]Reporting back:

Disabling it seem to have changed a lot in the output of the leak (the framework is not initialized now), other irrlicht files are being reported:

I see some data coming out from other shaders (water/terrain shader), but they were fixed and are displaying properly now. Are there new methods to dispose of them?

Here how the shader is applied:

Code: Select all

  //Create a Custom GLSL Material (Water shader)
   static s32 materialOcean=smgr->getVideoDriver()->getGPUProgrammingServices()->addHighLevelShaderMaterialFromFiles(
        "../media/shaders/ocean.vert", "vertexMain", video::EVST_VS_1_1,
        "../media/shaders/ocean.frag", "pixelMain", video::EPST_PS_1_4,
        ShaderCallBack::getInstance(), video::EMT_TRANSPARENT_ALPHA_CHANNEL);
 
    static ITexture* oceanLayer0 = smgr->getVideoDriver()->getTexture("../media/waveNM.png");
    static ITexture* oceanLayer1 = smgr->getVideoDriver()->getTexture("../media/sky.jpg");
 
    //Assign GLSL Shader
    ocean->setMaterialType((E_MATERIAL_TYPE)materialOcean); 
    
    //Assign Textures
    ocean->setMaterialTexture(0,oceanLayer0);
    ocean->setMaterialTexture(1,oceanLayer1); 
 
    ocean->setMaterialFlag(EMF_FOG_ENABLE,true);
Here are some of the output that I get on MSVC when I close the app (I have to force close it, by closing manually the console window).
I see tons of warning about "irrMap.h" ( and COctreeTriangleSelector.cpp, CGUIEnvironment.cpp, etc.) now. This is only a partial output of what I have because the forum thread cannot take all the text.

Is using shader under GL cause a memory leak?! (or bad setup that worked on 1.7.3 will cause that)

[EDIT 2]
irrMAP it reported to a specific line and here is the line: (line 192)

Code: Select all

        Node* newNode = new Node(keyNew,v);
.\COctreeTriangleSelector.cpp(78) : {715403} client block at 0x07D2BF90, subtype 0, 80 bytes long.
Here is the line 78:

Code: Select all

        node->Child[ch] = new SOctreeNode();
.\CSceneManager.cpp(1830) : {714860} client block at 0x0724AD40, subtype 0, 92 bytes long.
Here is line 1830:

Code: Select all

    return new COctreeTriangleSelector(mesh, node, minimalPolysPerNode);
.\CImage.cpp(57) : {712185} client block at 0x07A20040, subtype 0, 1048576 bytes long.
Here is line 57:

Code: Select all

        Data = new u8[Size.Height * Pitch];
I could go on and on like that, it's looking that when I try to close the device, the objects are not being disposed properly. What could cause that?
Something still in rendering and used while it's being closed?

Detected memory leaks!
Dumping objects ->
.\CImage.cpp(57) : {723944} client block at 0x0814C068, subtype 0, 240000 bytes long.
Data: <,sY &mS iO #mS > 2C 73 59 FF 26 6D 53 FF 20 69 4F FF 23 6D 53 FF
.\CNullDriver.cpp(1414) : {723943} client block at 0x07255950, subtype 0, 48 bytes long.
Data: < (K (K h , > 80 28 4B 10 EC 28 4B 10 68 C0 14 08 2C 01 00 00
{723942} normal block at 0x080DFF00, 80 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{723940} normal block at 0x080DFDE0, 80 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {723939} client block at 0x080DFD38, subtype 0, 108 bytes long.
Data: < "K "K P > 9C 22 4B 10 E0 22 4B 10 E0 FD 0D 08 50 00 00 00
.\CImage.cpp(57) : {723831} client block at 0x080DB9A8, subtype 0, 16384 bytes long.
Data: < mv i` wz ~ > FC 6D 76 00 F8 69 60 00 FB 77 7A 00 FD 8A 7E 00
.\CNullDriver.cpp(1414) : {723830} client block at 0x08189190, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 A8 B9 0D 08 40 00 00 00
{723829} normal block at 0x08189208, 55 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{723827} normal block at 0x08189118, 55 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {723826} client block at 0x08189070, subtype 0, 108 bytes long.
Data: < "K "K 7 > 9C 22 4B 10 E0 22 4B 10 18 91 18 08 37 00 00 00
.\CParticleSystemSceneNode.cpp(157) : {723789} client block at 0x08188DC0, subtype 0, 144 bytes long.
Data: < uH uH > 08 75 48 10 88 75 48 10 00 00 00 00 00 00 00 00
{723521} normal block at 0x08188488, 648 bytes long.
Data: < ?> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F
.\CImage.cpp(57) : {723445} client block at 0x080D0108, subtype 0, 47200 bytes long.
Data: < > FF FF FF 00 FF FF FF 00 FF FF FF 00 FF FF FF 00
.\CNullDriver.cpp(1414) : {723444} client block at 0x0826BAB0, subtype 0, 48 bytes long.
Data: < (K (K ; > 80 28 4B 10 EC 28 4B 10 08 01 0D 08 3B 00 00 00
{723443} normal block at 0x0826BB30, 66 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{723441} normal block at 0x0826B908, 66 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {723440} client block at 0x0826BA08, subtype 0, 108 bytes long.
Data: < "K "K & B > 9C 22 4B 10 E0 22 4B 10 08 B9 26 08 42 00 00 00
.\CImage.cpp(57) : {723389} client block at 0x08204008, subtype 0, 424000 bytes long.
Data: < > FF FF FF 00 FF FF FF 00 FF FF FF 00 FF FF FF 00
.\CNullDriver.cpp(1414) : {723388} client block at 0x08187988, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 08 40 20 08 12 02 00 00
{723387} normal block at 0x08187A08, 67 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{723385} normal block at 0x07F83D80, 67 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {723384} client block at 0x07F83CD8, subtype 0, 108 bytes long.
Data: < "K "K = C > 9C 22 4B 10 E0 22 4B 10 80 3D F8 07 43 00 00 00
.\CImage.cpp(57) : {723333} client block at 0x07F798E8, subtype 0, 40800 bytes long.
Data: < > FF FF FF 00 FF FF FF 00 FF FF FF 00 FF FF FF 00
.\CNullDriver.cpp(1414) : {723332} client block at 0x08008D88, subtype 0, 48 bytes long.
Data: < (K (K 3 > 80 28 4B 10 EC 28 4B 10 E8 98 F7 07 33 00 00 00
{723331} normal block at 0x08008E08, 65 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{723329} normal block at 0x08008D08, 65 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {723328} client block at 0x08008C60, subtype 0, 108 bytes long.
.\CImage.cpp(57) : {723234} client block at 0x08004030, subtype 0, 4096 bytes long.
.\CNullDriver.cpp(1414) : {723233} client block at 0x07F78BB8, subtype 0, 48 bytes long.
.\CGUIScrollBar.cpp(517) : {722546} client block at 0x07F739E0, subtype 0, 396 bytes long.
.\CGUIScrollBar.cpp(503) : {722541} client block at 0x07F73710, subtype 0, 396 bytes long.
.\CGUIListBox.cpp(39) : {722536} client block at 0x07F73488, subtype 0, 324 bytes long.
.\CGUIEnvironment.cpp(1171) : {722531} client block at 0x07F73230, subtype 0, 344 bytes long.
.\CGUIEnvironment.cpp(992) : {722526} client block at 0x08012E18, subtype 0, 396 bytes long.
.\CSceneManager.cpp(1819) : {722225} client block at 0x080112E0, subtype 0, 80 bytes long.
.\CSceneManager.cpp(1819) : {722209} client block at 0x08010A48, subtype 0, 80 bytes long.
.\COpenGLDriver.cpp(2506) : {722173} client block at 0x07F98620, subtype 0, 108 bytes long.
Data: <gl_ModelViewProj> 67 6C 5F 4D 6F 64 65 6C 56 69 65 77 50 72 6F 6A
{722029} normal block at 0x08011700, 11 bytes long.
Data: <gl_Fog.end > 67 6C 5F 46 6F 67 2E 65 6E 64 00
{722026} normal block at 0x07FAFC98, 13 bytes long.
Data: <gl_Fog.color > 67 6C 5F 46 6F 67 2E 63 6F 6C 6F 72 00
{722023} normal block at 0x07FAFC50, 10 bytes long.
Data: <waterTime > 77 61 74 65 72 54 69 6D 65 00
{722020} normal block at 0x07FAFC00, 13 bytes long.
Data: <terrainScale > 74 65 72 72 61 69 6E 53 63 61 6C 65 00
{722017} normal block at 0x07FAFBB0, 16 bytes long.
Data: <oceanReflection > 6F 63 65 61 6E 52 65 66 6C 65 63 74 69 6F 6E 00
{722014} normal block at 0x07FAFB60, 15 bytes long.
Data: <oceanNormalMap > 6F 63 65 61 6E 4E 6F 72 6D 61 6C 4D 61 70 00
{722011} normal block at 0x07FAFB10, 13 bytes long.
Data: <AmbientLight > 41 6D 62 69 65 6E 74 4C 69 67 68 74 00
{722008} normal block at 0x07FAFA30, 160 bytes long.
Data: < OF > 10 FB FA 07 0D 00 00 00 0D 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {722006} client block at 0x07FAF948, subtype 0, 72 bytes long.
Data: < J J J 8}A > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D 41 00
{721993} normal block at 0x07F71690, 1 bytes long.
Data: < > 00
{721991} normal block at 0x08011640, 20 bytes long.
Data: <gl_TextureMatrix> 67 6C 5F 54 65 78 74 75 72 65 4D 61 74 72 69 78
{721988} normal block at 0x080116A0, 29 bytes long.
Data: <gl_ModelViewProj> 67 6C 5F 4D 6F 64 65 6C 56 69 65 77 50 72 6F 6A
{721985} normal block at 0x080115F8, 11 bytes long.
Data: <gl_Fog.end > 67 6C 5F 46 6F 67 2E 65 6E 64 00
{721982} normal block at 0x080115A8, 13 bytes long.
Data: <gl_Fog.color > 67 6C 5F 46 6F 67 2E 63 6F 6C 6F 72 00
{721979} normal block at 0x08011558, 20 bytes long.
Data: <terrainTextureSc> 74 65 72 72 61 69 6E 54 65 78 74 75 72 65 53 63
{721976} normal block at 0x08011508, 13 bytes long.
Data: <terrainScale > 74 65 72 72 61 69 6E 53 63 61 6C 65 00
{721973} normal block at 0x080114B8, 14 bytes long.
Data: <terrainLayer3 > 74 65 72 72 61 69 6E 4C 61 79 65 72 33 00
{721970} normal block at 0x07FAFFE0, 14 bytes long.
Data: <terrainLayer2 > 74 65 72 72 61 69 6E 4C 61 79 65 72 32 00
{721967} normal block at 0x07FAFF90, 14 bytes long.
Data: <terrainLayer1 > 74 65 72 72 61 69 6E 4C 61 79 65 72 31 00
{721964} normal block at 0x07FAFF40, 14 bytes long.
Data: <terrainLayer0 > 74 65 72 72 61 69 6E 4C 61 79 65 72 30 00
{721961} normal block at 0x07FAFEF8, 8 bytes long.
Data: <plateau > 70 6C 61 74 65 61 75 00
{721958} normal block at 0x07FAFEA8, 15 bytes long.
Data: <editingTerrain > 65 64 69 74 69 6E 67 54 65 72 72 61 69 6E 00
{721955} normal block at 0x07FAFD28, 240 bytes long.
Data: < OF > A8 FE FA 07 0F 00 00 00 0F 00 00 00 80 4F 46 10
.\COpenGLDriver.cpp(3968) : {721953} client block at 0x07428E00, subtype 0, 72 bytes long.
Data: < J J J 8}A > C8 E9 4A 10 E0 E9 4A 10 94 E9 4A 10 38 7D 41 00
.\CImage.cpp(57) : {721935} client block at 0x08900040, subtype 0, 1048576 bytes long.
Data: < > C7 C0 C3 FF C3 BC BF FF C3 BC BF FF CA C3 C6 FF
.\CNullDriver.cpp(1414) : {721934} client block at 0x07FAF2E0, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 40 00 90 08 00 02 00 00
{721933} normal block at 0x07FAF358, 53 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{721931} normal block at 0x07FAF268, 53 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {721930} client block at 0x07FAF1C0, subtype 0, 108 bytes long.
Data: < "K "K h 5 > 9C 22 4B 10 E0 22 4B 10 68 F2 FA 07 35 00 00 00
.\CImage.cpp(57) : {721889} client block at 0x08630040, subtype 0, 1048576 bytes long.
Data: < kx > A6 BB D1 FF A1 B8 CE FF 8E A4 BD FF 6B 78 92 FF
.\CNullDriver.cpp(1414) : {721888} client block at 0x08013338, subtype 0, 48 bytes long.
Data: < (K (K @ c > 80 28 4B 10 EC 28 4B 10 40 00 63 08 00 02 00 00
{721887} normal block at 0x080133B0, 53 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{721885} normal block at 0x07F995D0, 53 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {721884} client block at 0x07F99528, subtype 0, 108 bytes long.
Data: < "K "K 5 > 9C 22 4B 10 E0 22 4B 10 D0 95 F9 07 35 00 00 00
{721849} normal block at 0x07F99330, 444 bytes long.
Data: < y x H B B > E8 C6 79 04 F0 E6 78 04 48 8C 42 07 F0 8C 42 07
.\CImage.cpp(57) : {721843} client block at 0x07B10040, subtype 0, 1048576 bytes long.
Data: <' W `8 > h 5 _ > 27 7F 57 FF 08 60 38 FF 3E 8F 68 FF 35 86 5F FF
.\CNullDriver.cpp(1414) : {721842} client block at 0x07F99240, subtype 0, 48 bytes long.
Data: < (K (K @ > 80 28 4B 10 EC 28 4B 10 40 00 B1 07 00 02 00 00
{721841} normal block at 0x07F992B8, 53 bytes long.
Data: <c:/users/public/> 63 3A 2F 75 73 65 72 73 2F 70 75 62 6C 69 63 2F
{721839} normal block at 0x07F991C8, 53 bytes long.
Data: <c:/Users/Public/> 63 3A 2F 55 73 65 72 73 2F 50 75 62 6C 69 63 2F
.\COpenGLDriver.cpp(2506) : {721838} client block at 0x07F99120, subtype 0, 108 bytes long.
.\COctreeTriangleSelector.cpp(78) : {715008} client block at 0x0738C1D8, subtype 0, 80 bytes long.
Data: <x 5 | H > 78 1D 35 07 06 00 00 00 06 00 00 00 7C A4 48 10
{715006} normal block at 0x0738C0C0, 216 bytes long.
Data: < j[ F =l =e > D4 6A 5B BD 1D 46 A1 3D 6C 97 1F 3D 65 D2 82 BD
.\COctreeTriangleSelector.cpp(78) : {715005} client block at 0x0738C030, subtype 0, 80 bytes long.
Data: < 8 | H > C0 C0 38 07 06 00 00 00 01 00 00 00 7C A4 48 10
{714994} normal block at 0x073B2800, 1980 bytes long.
Data: < ) = -o > 18 29 96 BD BA 0D 10 BA 1C C5 1F 3D 9E 2D 6F BD
.\COctreeTriangleSelector.cpp(78) : {714990} client block at 0x0738BFA0, subtype 0, 80 bytes long.
Data: < (; 7 " | H > 00 28 3B 07 37 00 00 00 22 00 00 00 7C A4 48 10
{714989} normal block at 0x07351970, 972 bytes long.
Data: < L CL >;.$ l > B0 4C 96 BD 43 4C A2 3E 3B 2E 24 BD 6C A4 9C BD
.\COctreeTriangleSelector.cpp(78) : {714986} client block at 0x0738BF10, subtype 0, 80 bytes long.
Data: <p 5 | H > 70 19 35 07 1B 00 00 00 19 00 00 00 7C A4 48 10
{714984} normal block at 0x0738BDF8, 216 bytes long.
Data: < c = Y p > EE BE 63 BD EB BF 8C 3D 8F E7 59 BC 04 F9 70 BD
.\COctreeTriangleSelector.cpp(78) : {714983} client block at 0x0738BD68, subtype 0, 80 bytes long.
Data: < 8 | H > F8 BD 38 07 06 00 00 00 01 00 00 00 7C A4 48 10
{714982} normal block at 0x0738BC50, 216 bytes long.
Data: <` b > z > 60 D6 62 BD 0F 8A 16 3E D2 93 E8 BC 86 7A 8A BD
.\COctreeTriangleSelector.cpp(78) : {714981} client block at 0x07395750, subtype 0, 80 bytes long.
Data: <P 8 | H > 50 BC 38 07 06 00 00 00 01 00 00 00 7C A4 48 10
{714978} normal block at 0x07395638, 216 bytes long.
Data: < 0 = I > A5 30 93 BD F0 B0 D3 3D EB 49 86 BC B2 F2 9A BD
.\COctreeTriangleSelector.cpp(78) : {714977} client block at 0x0738B758, subtype 0, 80 bytes long.
Data: <8V9 | H > 38 56 39 07 06 00 00 00 01 00 00 00 7C A4 48 10
{714969} normal block at 0x07351178, 1980 bytes long.
Data: < ! > 11 E0 A9 BD 8F 8E ED BA 21 10 B9 BC EA 91 7F BD
.\COctreeTriangleSelector.cpp(78) : {714959} client block at 0x0738B6C8, subtype 0, 80 bytes long.
Data: <x 5 7 | H > 78 11 35 07 37 00 00 00 1F 00 00 00 7C A4 48 10
{714958} normal block at 0x07F62CC0, 16092 bytes long.
Data: <; yw : = -o > 3B C4 19 BD 79 77 00 3A 20 EE 0C 3D 9E 2D 6F BD
.\COctreeTriangleSelector.cpp(78) : {714951} client block at 0x0738B638, subtype 0, 80 bytes long.
Data: < , | H > C0 2C F6 07 BF 01 00 00 9C 00 00 00 7C A4 48 10
{714949} normal block at 0x0738B848, 972 bytes long.
Data: < ? & > 13 11 91 BD F1 98 0F 3F AB 26 C9 BD A4 1D AE BD
.\COctreeTriangleSelector.cpp(78) : {714946} client block at 0x07395E88, subtype 0, 80 bytes long.
Data: <H 8 | H > 48 B8 38 07 1B 00 00 00 13 00 00 00 7C A4 48 10
{714945} normal block at 0x07395520, 216 bytes long.
Data: < O -?"( > 94 DF 4F BD FE E8 2D 3F 22 28 1A BE 16 01 BA BD
.\COctreeTriangleSelector.cpp(78) : {714944} client block at 0x07395DF8, subtype 0, 80 bytes long.
Data: < U9 | H > 20 55 39 07 06 00 00 00 03 00 00 00 7C A4 48 10
{714943} normal block at 0x07395CE0, 216 bytes long.
Data: <1 ? I > 31 C6 08 BD AD C7 10 3F FE AE 0E BE 84 49 09 BD
.\COctreeTriangleSelector.cpp(78) : {714942} client block at 0x07395C50, subtype 0, 80 bytes long.
Data: < \9 | H > E0 5C 39 07 06 00 00 00 03 00 00 00 7C A4 48 10
{714940} normal block at 0x0738B230, 972 bytes long.
Data: < R F ? Q 1 > CB 52 A5 BC E7 46 10 3F FC FB 51 BE F9 31 82 BC
.\COctreeTriangleSelector.cpp(78) : {714937} client block at 0x0734CA40, subtype 0, 80 bytes long.
Data: <0 8 | H > 30 B2 38 07 1B 00 00 00 13 00 00 00 7C A4 48 10
{714936} normal block at 0x07395848, 972 bytes long.
Data: < S ?t = I$ > 8A 03 11 BD B2 53 0B 3F 74 F9 3D BE D6 49 24 BD
.\COctreeTriangleSelector.cpp(78) : {714933} client block at 0x0734C9B0, subtype 0, 80 bytes long.
Data: <HX9 | H > 48 58 39 07 1B 00 00 00 11 00 00 00 7C A4 48 10
{714932} normal block at 0x0734C898, 216 bytes long.
Data: < 9 ^ ? C > B2 AF 39 BD 5E B3 13 3F 8C A4 1B BE D2 99 43 BD
.\COctreeTriangleSelector.cpp(78) : {714931} client block at 0x0734C808, subtype 0, 80 bytes long.
Data: < 4 | H > 98 C8 34 07 06 00 00 00 04 00 00 00 7C A4 48 10
{714930} normal block at 0x0734C6F0, 216 bytes long.
Data: <sc^ ? bQ\ > 73 63 5E BD E4 91 0A 3F 06 C9 10 BE 62 51 5C BD
.\COctreeTriangleSelector.cpp(78) : {714929} client block at 0x073524E0, subtype 0, 80 bytes long.
Data: < 4 | H > F0 C6 34 07 06 00 00 00 02 00 00 00 7C A4 48 10
{714928} normal block at 0x07EEC3B0, 972 bytes long.
Data: < + ?G A 6 > FB E2 93 BD CD 2B 0D 3F 47 D9 41 BE 36 0C 8B BD
.\COctreeTriangleSelector.cpp(78) : {714925} client block at 0x07352450, subtype 0, 80 bytes long.
Data: < | H > B0 C3 EE 07 1B 00 00 00 12 00 00 00 7C A4 48 10
{714923} normal block at 0x0734C2E8, 972 bytes long.
Data: < 4 ? [K = Z > B2 CE 34 BD CB 94 02 3F D4 5B 4B BE 3D C2 5A BD
.\COctreeTriangleSelector.cpp(78) : {714915} client block at 0x073523C0, subtype 0, 80 bytes long.
Data: < 4 | H > E8 C2 34 07 1B 00 00 00 18 00 00 00 7C A4 48 10
{714914} normal block at 0x07393588, 8028 bytes long.
Data: <6 t ? * I > 36 98 1C BD 9E 74 06 3F BE F1 2A BE 84 49 09 BD
.\COctreeTriangleSelector.cpp(78) : {714908} client block at 0x07352330, subtype 0, 80 bytes long.
Data: < 59 H | H > 88 35 39 07 DF 00 00 00 48 00 00 00 7C A4 48 10
{714907} normal block at 0x07EEC1A0, 468 bytes long.
Data: < ?W }B > D4 A3 F4 BD EA AA 1A 3F 57 1F A1 BD 7D 42 04 BE
.\COctreeTriangleSelector.cpp(78) : {714905} client block at 0x07F07180, subtype 0, 80 bytes long.
Data: < | H > A0 C1 EE 07 0D 00 00 00 09 00 00 00 7C A4 48 10
{714904} normal block at 0x07352120, 468 bytes long.
Data: <R 8 ? < = > 52 8A DD BD 38 9E 09 3F C2 3C BF BD C5 3D D6 BD
.\COctreeTriangleSelector.cpp(78) : {714902} client block at 0x07F074A8, subtype 0, 80 bytes long.
Data: < !5 | H > 20 21 35 07 0D 00 00 00 0C 00 00 00 7C A4 48 10
{714901} normal block at 0x07F07298, 468 bytes long.
Data: < YE ?-n T > 83 B1 1F BE 59 45 1A 3F 2D 6E 13 BE 54 84 FB BD
.\COctreeTriangleSelector.cpp(78) : {714899} client block at 0x07F070F0, subtype 0, 80 bytes long.
Data: < r | H > 98 72 F0 07 0D 00 00 00 08 00 00 00 7C A4 48 10
{714897} normal block at 0x07F06FD8, 216 bytes long.
Data: < , ? 5, > 83 F3 2C BE 06 BF 10 3F C3 16 16 BE D2 35 2C BE
.\COctreeTriangleSelector.cpp(78) : {714890} client block at 0x0734AEF8, subtype 0, 80 bytes long.
Data: < o | H > D8 6F F0 07 06 00 00 00 03 00 00 00 7C A4 48 10
{714889} normal block at 0x0738F670, 16092 bytes long.
Data: < ?f }B > DC 8A 06 BE 01 15 15 3F 66 EB 94 BD 7D 42 04 BE
.\COctreeTriangleSelector.cpp(78) : {714882} client block at 0x0734AE68, subtype 0, 80 bytes long.
Data: <p 8 [ | H > 70 F6 38 07 BF 01 00 00 5B 00 00 00 7C A4 48 10
{714881} normal block at 0x0734BAF0, 1980 bytes long.
Data: <: L r < { > 3A A5 4C BD 72 1B B8 3C FD DC 91 BD F9 7B 80 BD
.\COctreeTriangleSelector.cpp(78) : {714864} client block at 0x0734ADD8, subtype 0, 80 bytes long.
Data: < 4 7 | H > F0 BA 34 07 37 00 00 00 20 00 00 00 7C A4 48 10
{714863} normal block at 0x0743FF08, 93888 bytes long.
Data: < =:L l c_=> 82 C3 0D 3D 3A 4C EE BA 1C 6C 04 BD DC 63 5F 3D
.\COctreeTriangleSelector.cpp(30) : {714862} client block at 0x0734B920, subtype 0, 80 bytes long.
Data: < C 0 | H > 08 FF 43 07 30 0A 00 00 C2 01 00 00 7C A4 48 10
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423411} client block at 0x06749C48, subtype 0, 24 bytes long.
Data: < h t > 00 00 00 00 00 00 00 00 68 9B 74 06 F6 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423378} client block at 0x06749B68, subtype 0, 24 bytes long.
Data: < t H t t > 88 9A 74 06 48 9C 74 06 A8 99 74 06 F5 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423345} client block at 0x06749A88, subtype 0, 24 bytes long.
Data: < h t > 00 00 00 00 00 00 00 00 68 9B 74 06 F4 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423312} client block at 0x067499A8, subtype 0, 24 bytes long.
Data: < t h t ( t > E8 97 74 06 68 9B 74 06 28 9D 74 06 F3 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423279} client block at 0x067498C8, subtype 0, 24 bytes long.
Data: < t > 00 00 00 00 00 00 00 00 E8 97 74 06 F2 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423246} client block at 0x067497E8, subtype 0, 24 bytes long.
Data: < t t t > 08 97 74 06 C8 98 74 06 A8 99 74 06 F1 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423213} client block at 0x06749708, subtype 0, 24 bytes long.
Data: < t > 00 00 00 00 00 00 00 00 E8 97 74 06 F0 1E CD CD
c:\Users\Public\Projets\irrlicht-1.8\include\irrMap.h(692) : {423180} client block at 0x06749628, subtype 0, 24 bytes long.
.
Last edited by christianclavet on Sat Nov 10, 2012 6:34 pm, edited 2 times in total.
robmar
Posts: 1125
Joined: Sun Aug 14, 2011 11:30 pm

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by robmar »

Well I sort of had a clue something was wrong after cycling my applications and Windows 7 ran out of memory! :)

I had thought that Windows 7 was for sure protected, and reserved enough memory to continue operation, like Unix, but seems not!

So I then monitored my app using TaskManager, which gives resource allocated for each running app.

This works nicely as it gives one total figure for all memory allocations used by any process/program.

So I can easily see the jump when Irr device is created, 20 MB if D3D is used, or 65 MB if OpenGL.

And I can see that whereas the D3D released the memory, under OpenGL 12MB gets lost.
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by christianclavet »

Hi, I rebuilded the Irrlicht DLL in release mode, and tried to run my application and close it again. Stragely, MSVC doesnt report any memory leak now and all threads report exit = 0.
How can the debug build of the library could do that in MSVC?
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by hybrid »

Well, memory debugging is only available in debug modes for sure. So nothing will be reported in the release version. You need other tools for that. But also make sure that your app is not closed via Alt-F4, but by clicking some close button. Otherwise the MSVC mem checker will report lost ressources which are cleaned up by the system handler. This is not seen by MSVC, so many false reports are generated.
robmar
Posts: 1125
Joined: Sun Aug 14, 2011 11:30 pm

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by robmar »

So what about the massive memory leaks reported by Windows resource monitor, and Task Manager app list, which shows the same 12 MB loss each time irr device is created and deleted but only when the opengl driver is selected, and this loss happens without even adding a single node!

Does that just happen in Windows? Has anyone checked yet, as it only takes about 3 line of code...
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by CuteAlien »

Sorry, wasn't coding today. Please be a little bit more patient, we work on the engine in our spare-time and additional to answering forum posts and hunting more bug-reports, we also occasionally spend one of our free days on others stuff. Especially after spending the last weekend and every evening this week on a release... (also I'm working on another release in my day job as well right now).

Don't worry - by now there is probably no one left reading this forum who hasn't seen the 12 MB memory leak mentioned, we won't forget it ;-) It's not exactly that much of a show-stopper anyway - usually the opengl device isn't something you open and close all the time and there are no leaks reported on normal examples, so it doesn't seem to happen on the usual program quit.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
robmar
Posts: 1125
Joined: Sun Aug 14, 2011 11:30 pm

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by robmar »

Okay, point taken! Oops, sorry!! :)

Initially I tried creating the irr device and reusing it, as I need to load scenes that can be quite complex, but after droping/removing all the content, the state of the engine was usually a bit "weird", such that shaders that previously loaded didn´t work quite right anymore.

So I delete and re-create the engine before loading new scenes, so its a bit of a headache that opengl loses memory.

Some of my scenes use hlsl, others glsl, so deleting and recreating the device was the only solution I could find.

Hybrid has told me to create a sample to show the leak, which I will do tomorrow.

Not sure where I should post the zip...
Nadro
Posts: 1648
Joined: Sun Feb 19, 2006 9:08 am
Location: Warsaw, Poland

Re: Irrlicht 1.8. Application not closing and memory leak...

Post by Nadro »

Upload an example for a hosting service eg "sendspace.com" and paste a link here.
Library helping with network requests, tasks management, logger etc in desktop and mobile apps: https://github.com/GrupaPracuj/hermes
Post Reply