diff -r de015e47b365 -r b8a9179c123d mozilla-nsSound.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mozilla-nsSound.patch Thu May 10 14:04:13 2012 +0200 @@ -0,0 +1,43 @@ + +# HG changeset patch +# User Wolfgang Rosenauer +# Date 1336632642 -7200 +# Node ID 56cc5a3c431612fa98f0550f02a9f34b566e1d9b +# Parent 307671d73258761245d165e43591d885c7f68b73 +Bug 749739 - New email sound notification file cannot contain spaces (Linux - Thunderbird 12). r=karlt, a=lsblakk (upstream in FF14) + +diff --git a/widget/gtk2/nsSound.cpp b/widget/gtk2/nsSound.cpp +--- a/widget/gtk2/nsSound.cpp ++++ b/widget/gtk2/nsSound.cpp +@@ -353,23 +353,28 @@ NS_METHOD nsSound::Play(nsIURL *aURL) + bool isFile; + nsresult rv = aURL->SchemeIs("file", &isFile); + if (NS_SUCCEEDED(rv) && isFile) { + ca_context* ctx = ca_context_get_default(); + if (!ctx) { + return NS_ERROR_OUT_OF_MEMORY; + } + +- nsCAutoString path; +- rv = aURL->GetPath(path); ++ nsCAutoString spec; ++ rv = aURL->GetSpec(spec); + if (NS_FAILED(rv)) { + return rv; + } ++ gchar *path = g_filename_from_uri(spec.get(), NULL, NULL); ++ if (!path) { ++ return NS_ERROR_FILE_UNRECOGNIZED_PATH; ++ } + +- ca_context_play(ctx, 0, "media.filename", path.get(), NULL); ++ ca_context_play(ctx, 0, "media.filename", path, NULL); ++ g_free(path); + } else { + nsCOMPtr loader; + rv = NS_NewStreamLoader(getter_AddRefs(loader), aURL, this); + } + + return rv; + } +