Opened 16 years ago

Closed 9 years ago

#1713 closed bug (fixed)

App server leaks memory when playing with whistle sample application.

Reported by: tqh Owned by: axeld
Priority: normal Milestone: R1
Component: Servers/app_server Version: R1/Development
Keywords: Cc: anevilyak
Blocked By: Blocking:
Platform: All

Description

Whistle[1], one of the old BeOS sample apps is a special app as it tries to catch mouse and keyboard events all the time and making midi-sounds when something happens. It also has special controls (pigtail controls).

When I tested it, the controls where not drawn correctly and the midi-sounds wasn't heard or no events was captured.

I havn't investigated further, but I wanted to see if it worked as we seem to have mouse-issues in Mozilla and I suspected this would as well.

[1] http://ftp.icm.edu.pl/packages/beos/samples/midi_kit/Whistle.zip

Change History (6)

comment:1 by anevilyak, 16 years ago

Cc: anevilyak added

comment:2 by axeld, 14 years ago

Component: - GeneralServers/app_server
Version: R1/pre-alpha1R1/Development

comment:3 by jonas.kirilla, 13 years ago

The article mentions an app_server memory leak that seems to also be there in Haiku's app_server. Interacting with the Whistle controls grows the app_server's heap.

If one comments out the Invalidate() here in Whistle/PigTail.cpp

void PigTail::SetBubble(int32 coord)
{
	bubble = coord;
	bubble = max_c(0, min_c(bubble, height));
	// Invalidate();
}

the leak does not show itself. I hope this helps.

This was on hrev39648. (Seems to work as intended, producing audio, given a working big_synth.sy. I used the one from Debian, IIRC.)

comment:4 by pulkomandy, 12 years ago

Summary: Problems with Whistle, good testcase app? (BeOS sample app)App server leaks memory when playing with whistle sample application.

App works fine on hrev43105; Seems there's still a memory leak, however (when moving the "sliders").

comment:5 by pulkomandy, 9 years ago

Blocking: 7071 added

comment:6 by pulkomandy, 9 years ago

Blocking: 7071 removed
Resolution: fixed
Status: newclosed

And I can't reproduce the leak anymore, either, so we can finally close this!

Note: See TracTickets for help on using tickets.