Update Turkish translation
Add x-scheme-handler support to the Mumble .desktop file.

This is the modern way to handle application-specific URL schemes
on the various desktop environments on Unix-like systems.

Fixes #1061 (reported by Chris Knadle; thanks!)

Originally fixed in Ubuntu via
https://bugs.launchpad.net/ubuntu/+source/mumble/+bug/934239
Updated Polish translation
mumble, mumble_exe: fix overlay self-detection for the mumble_app.dll build.

When Mumble was built as the mumble.exe/mumble_app.dll pair, mumble_ol.dll's
overlay self-detection logic didn't work, because it failed to find the
special "mumbleSelfDetection" symbol.

This change adds that symbol to mumble_exe. It is perhaps not the cleanest
solution to the problem, but doing it this way allows older mumble_ol.dlls
to continue to work with mumble_app.dll builds, and we avoid changing the
overlay self-detection check in mumble_ol.dll.

Fixes issue #1053.
overlay: fix blacklist debug ods call.
Overlay: Rework Code.

* Separate DXGI logic from D3D10 into a separate file dxgi.cpp
* Structure code and logic, introduce additional functions
* Introduce constants
* Code commenting
* d3d9.cpp:
** Access devMap via std::find rather than operator[]
** Introduce class Stash to temporarily set variable value and revert on
destruction
** Move logic to function findOriginalDevice
** Use widestring for modulename (consistency)
** Implement Hook for Direct3DCreate9Ex
** Move function IsFnInModule to common lib.cpp/.h
* opengl.cpp:
** Add whitespace to format code
** Fix logging scope prefix
** Remove static global variable
AGC: remove redundant speex_preprocess_ctl call
Overlay: Changes as per PR-comments

* Make cpp-local functions static so they are local file/translation unit
scope.
* Remove unused variables uiAudioCount and bVideoHooked
* Comment extern declarations, where there definitions are located.
* Improve constant naming JUMPOP_OFFSET => JMP_OP_SIZE.
* Remove extern declaration from method definitions.
* Adjust type declaration formatting to typical formatting.
* Use voidFunc typedef to pass around function address pointers.
** C++-style casts instead of C-style raw casts.
* Other minor formatting (/whitespace) adjustments
* Fix log text.
* Improve log text.
* Consistent, improved varnaming in d3d9.cpp on address calculation;
naming fn and base.
Overlay: Changes as per PR-comments

* Use sizeof() rather then size constant where possible
Update Opus to 1.1-rc
Overlay: Code improvements

* Use ARRAY_NUM_ELEMENTS(array) instead of constant
Overlay: Resolve d3d9 hook TODO. Fix naming.

* Introduce commented constatns for vtable offsets of create methods.
* Fix variable naming
* Resolve TODO in HookCreateEx:
HardHook checks if it was already set up (baseaddr != NULL), and if it was
it ignores further setup calls. Hence, we can safely do a best-effort of
hooking create9 again.
We currently expect the IDirect3D9 and IDirect3D9Ex objects to be the
same object instance.
** If we wanted to support separate objects we would query both for
IUnknown to compare addresses, and potentially create yet another hook to
myCreateDevice for the create9 on d3d9ex.
Merge pull request #1075 from mumble-voip/olay-changes

Overlay: Rework Code.
Fix handling of failed shared data map creation in overlay.

createSharedDataMap can fail to map the shared data used by other
functionality in the overlay dll. In this case pointers including
"sd" remain NULLd. With the recent overlay changes the modified
shared data structures changed, triggering this case when running
different versions. This crashed Mumble on startup due to an
unchecked dereference of the "sd" pointer.

Also when extracting createSharedDataMap during refactoring behavior
was changed. The overlay kept injecting itself even if the mapping
failed. This also addresses this by making createSharedDataMap return
a bool indicating success or failure.
Russian translation fixes
Update Opus to 1.1-rc3
Fix crash of target application due to failures in D10State::init.

Function didn't handle errors at all and did only very limited logging.
This patch changes the function return type from void to bool and aborts
in case of failure. Also logging was added for all such failures. To handle
partially initialized object state the destructor was changed to NULL check
pointers before dereferencing them. If a failure occurs the state block
isn't used but destructed right away.
Update to Opus 1.1
Logtextfix. Logically format code.

* Fix log message text
* Format injection code logically, consistent to overlay injection code.
mumble: allow Log_macx.mm to build against the OS X 10.4 SDK (for universal builds).