Issue 127313 - crash "Could not create system bitmap!" caused by scrolling over diagrams
Summary: crash "Could not create system bitmap!" caused by scrolling over diagrams
Alias: None
Product: Writer
Classification: Application
Component: viewing (show other issues)
Version: 4.1.3
Hardware: PC Windows XP
: P5 (lowest) Major with 2 votes (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
Depends on:
Reported: 2017-02-03 20:33 UTC by karko
Modified: 2017-02-12 19:26 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---

screenshot of the error message (3.44 KB, image/png)
2017-02-03 20:33 UTC, karko
no flags Details
screenshot of the taskmanager (34.37 KB, image/png)
2017-02-12 17:06 UTC, karko
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description karko 2017-02-03 20:33:36 UTC
Created attachment 85954 [details]
screenshot of the error message

When I have a writer document open and a spreadsheet document, both containing multiple diagrams, then it's only a question of time until open office crashes.

Reproducing the crash is difficult. I haven't found out jet what triggers the crash. But the crash happens so often, that continuing working on thouse 2 documents is nearly impossible. If I open only 1 document at the same time, then the crash doesn't seem to occur or at least occurs much fewer times.

When the crash occurs, then a window shows up. The window shows an error message (see attachment). The windows of the 2 documents remain open but can't be used anymore. When I click on the "ok"-button on the error window, then open office closes itself.

When I open one of the documents afterwards again to continue working on them, then open office asks wether to reconstruct the 2 documents.
Comment 1 karko 2017-02-03 20:46:38 UTC
Here are the 2 documents:

Please don't distribute the files. They are for bug tracking only.

To trigger the bug: Copy diagrams from 1N4007.ods to Formelsammlung.odt. Then scoll up and down over the last pages where the bunch of diagramms are. I hope this will trigger the crash on your pc.
Comment 2 karko 2017-02-04 17:23:23 UTC
I am able to reproduce the bug reliably now.

Here is a smaller test file which is specially prepared for this bug:

Open the file with open office. Then open your task manager (if you use windows). In the task manager make sure that it shows the column which shows the amount of GDI-objects. Back in open office scroll down, but not too fast so that open office renders all diagrams. If you reached to bottom, then you can scoll back up again. And then down again. While doing so you will reach a point where open office suddenly starts to increase the amount of GDI-objects by a few hundred every time a next diagram is being rendered. You can activate the option of the task manager to keep the task manager in foreground (or place the task manager and open office next to each other so you see the task manager while scrolling).

As soon as the counter reached 10 000 open office will crash.
Comment 3 oooforum (fr) 2017-02-06 09:17:26 UTC
I was not able to reproduce with AOO 4.1.3 and Windows 7 x64 Pro.
Sounds like a memory problem.
Remember that Windows XP is outdated since 2014.
Comment 4 karko 2017-02-07 20:46:13 UTC
It's not that Open Office takes up that much memory that my machine runs out of memory. Open Office needs a few hundred megabytes (which is quite something) but if it does so, it could still take another 1.5 gigabyte until my machine couldn't provide any more.

If I change the settings regardings how much memory open office is allowed to use for graphics then this actually seams to effect the problem. By rising it to maximum (256 mb) the skyrocketing of the GDI-object counter seems to start later. But the problem still exists and the crash still happens.
Comment 5 karko 2017-02-07 20:51:18 UTC
Btw, as you mention it: I am using a 32 bit operating system.
Comment 6 Peter 2017-02-09 02:02:16 UTC
in general I think this is difficult to track down. I hope Karko you bring some patience.

From what I read on the net this is a 32 bit specific Issue.
64bit Provides to much adress space, so it virtually never occurs.
Can we have a test on 32 bit? (I dont have a 32bit system anymore + no real time to set a vm up. :( )

Karko can you please elaborate on the Operations you usually do?
Do you leave the Grafic untouched? This could lead somewhere.

Have you tweaked the memory settings in Open Office itself?
My understanding is that the Settings under Einstellungen-> Arbeitsspeicher -> Grafical Cache do limit the available Memory available for grafical operations
But my understanding can be wrong.

Have you encountered the behaviour also when you do nothing? - That could mean something is tempering with your data or Memory leak?

Thanks for the report and patience.

A workaround that was suggested is to use another grafical format, that uses less space, but that was a bit controversial discussed from what I found. And I know nothing ;)
Comment 7 karko 2017-02-12 16:20:35 UTC
Regarding the settings of the memory for graphical objects:
I encountered the problem with the default settings of open office. So I increased the values to see if it can be fixed this way. My observation was, that this probably only occures when the graphic cache is full. So increasing the values means this problem occures later. But that's only my speculation without hard facts.

Regarding an other grafical format:
I could only reproduce this issue with the open office diagrams. Inserting a lot of png files doesn't seem to trigger the resource leak (increase of GDI-objects).
Comment 8 karko 2017-02-12 16:30:46 UTC
Maybe this helps a little:
If I start open office with OllyDbg and then trigger the bug then no error message appears. But OllyDbg says that the process terminated with the exit code "E06D7363|h" (-529697949|d or +3765269347|d). Maybe this error code helps. Maybe it's just a random value in the extended accumulator.
Comment 9 karko 2017-02-12 16:49:33 UTC
I continued testing for a while and couldn't reproduce my last comment. The error message does appear sometimes. If it does, then the return code is "14D|h" (333|d).
Comment 10 karko 2017-02-12 16:51:12 UTC
Regarding what happens if I do nothing:
If the window is just open and I do nothing then nothing happens. The counter doesn't go up.

If I open an other window (like the windows calculator) and move it around so that the open office window in the background needs to redraw it's surface, then the counter also goes up.
Comment 11 karko 2017-02-12 17:06:00 UTC
Created attachment 85959 [details]
screenshot of the taskmanager
Comment 12 Peter 2017-02-12 19:26:02 UTC
Thank you for your tests!