From: Peter Enderborg <pme@ufh.se>
To: Takashi Iwai <tiwai@suse.de>
Cc: "alsa-devel@lists.sourceforge.net" <alsa-devel@lists.sourceforge.net>
Subject: Re: Memory managment.
Date: Mon, 06 May 2002 13:01:54 +0200 [thread overview]
Message-ID: <3CD6629F.28AFBDC5@ufh.se> (raw)
In-Reply-To: s5hk7qhmuja.wl@alsa2.suse.de
Takashi Iwai wrote:
> At Mon, 06 May 2002 12:09:57 +0200,
> Peter Enderborg wrote:
> >
> > Takashi Iwai wrote:
> >
> > > Hi Peter,
> > >
> > > At Sun, 05 May 2002 19:35:04 +0200,
> > > Peter Enderborg wrote:
> > > >
> > > > I have some memory problems with my alsa programming.
> > > > And I have tryed to do a small program to see whats wrong.
> > > > And I still have the same problem with this little program...
> > > >
> > > >
> > > > #include <alsa/asoundlib.h>
> > > > int main()
> > > > {
> > > > while (1)
> > > > {
> > > > snd_seq_event_t *foo;
> > > > foo = snd_seq_create_event();
> > > > snd_seq_free_event(foo);
> > > > }
> > > > return 0;
> > > > }
> > > >
> > > > I guess that I have missed some fundamental things about the events.
> > > > This on cvs version from 20020504
> > >
> > > err.. please avoid using snd_seq_create_event(), or free the pointer
> > > by normal free() call. snd_seq_free_event() doesn't free the
> > > malloc'ed pointer on alsa 0.9.
> > >
> >
> > What is the correct way to create an event then?
>
> the event struct is explicitly defined and its size is constant unlike
> other structs in API. thus you can use any allocator as you like,
> such as malloc, etc. if the event can be temporary, use it as a
> normal type simply like this:
>
> {
> snd_seq_event_t ev;
> snd_seq_ev_clear(&ev);
> ...
> snd_seq_event_output(handle, &ev);
> }
>
> snd_seq_event_output() copies the event instance, so a temporary
> variable can be used safely in the above.
>
> Takashi
Then we should remove theh free operation as well, so we get symetric API.
--
foo!
_______________________________________________________________
Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: bandwidth@sourceforge.net
next prev parent reply other threads:[~2002-05-06 11:01 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-05 17:35 Memory managment Peter Enderborg
2002-05-06 9:42 ` Takashi Iwai
2002-05-06 10:09 ` Peter Enderborg
2002-05-06 10:37 ` Takashi Iwai
2002-05-06 11:01 ` Peter Enderborg [this message]
2002-05-07 2:18 ` Ville Syrjälä
-- strict thread matches above, loose matches on Subject: below --
2002-05-05 14:27 Peter Enderborg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3CD6629F.28AFBDC5@ufh.se \
--to=pme@ufh.se \
--cc=alsa-devel@lists.sourceforge.net \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.