[Bug 732572]
Matthew Gregan
kinetik at flim.org
Mon Oct 31 00:09:56 UTC 2011
Comment on attachment 570562
Bug 635918 Part 1 - Make nsISound::Play use libcanberra on Linux rather than esound (v2)
Review of attachment 570562:
-----------------------------------------------------------------
Thanks, looks good. I do think an nsAutoPtr should be used for the
callback data, comments below.
::: widget/src/gtk2/nsSound.cpp
@@ +152,5 @@
> + if (!data) {
> + return;
> + }
> + PR_Close(data->mFD);
> + PR_Delete(data->mPath.get());
These two lines can also be removed, since the destructor will take care
of this when delete is called.
@@ +269,2 @@
> }
>
Allocate the CanberraPlayCBData here, like so:
nsAutoPtr<CanberraPlayCBData> cbdata(new CanberraPlayCBData(fd, path));
@@ +273,5 @@
> + while (length > 0) {
> + PRInt32 amount = PR_Write(fd, data, length);
> + if (amount < 0) {
> + PR_Close(fd);
> + PR_Delete(path.get());
Move the close and delete into a destructor for CanberraPlayCBData, then
remove the code from here and the two error paths below.
@@ +300,3 @@
>
> + ca_proplist_sets(p, "media.filename", path.get());
> + ca_context_play_full(ctx, 0, p, ca_finish_cb, cbdata);
Pass cbdata here using |cbdata.forget()|.
--
You received this bug notification because you are a member of Mozilla
Bugs, which is subscribed to Mozilla.
https://bugs.launchpad.net/bugs/732572
Title:
New Mail Notification Sound does not play in Natty
To manage notifications about this bug go to:
https://bugs.launchpad.net/thunderbird/+bug/732572/+subscriptions
More information about the Ubuntu-mozillateam-bugs
mailing list