[Settings] Remove unused variables.
[Settings] Operator=' should return &.
[Settings] Function parameter '...' should be passed by reference.
[Settings] Prefer prefix ++/-- operators for non-primitive types.
[Settings] Possible inefficient checking for 'settingMap' emptiness.
[Settings] Make functions static if possible.
[GUIControlSettings] Make GetID() const.
[AdvancedSettings] Removed unused member variable and moved m_initialized = true at the end of Initialize().
Merge pull request #2906 from arnova/music_db_fixes

Music info/db (regression) fixes
Improve resilience of volume change.

Building on the previous fix for the audio volume jumps experienced
when switching tracks, this adds a double check that the underlying audio
layer has actually set the volume to the new value. This may fail because
the COMXAudio object it not yet initialised.

If there is a failure, then the volume change is retried in the next
iteration of COMXPlayer::Process().
Merge pull request #2909 from sgebbie/master

[rbp/omxplayer] Volume Jump Fix
[rbp/omxplayer] Fix build error from #2909

(sorry should have spotted this)
Merge pull request #2910 from popcornmix/fix_volume_fix

[rbp/omxplayer] Fix build error from #2909
Fix memory leak and a failed ASSERT under win32 Debug build. A string was being double-strdup'ed, causing delete[] to fail when deleting the copy from the different heap instead of the local one.

Tracking down the assert to dbgheap.c gives the following message:
> a bad pointer has been passed in. It may be totally bogus, or it may have been allocated from another heap. The pointer MUST come from the 'local' heap.
update wunderground addon
[fix] check active window before delegating player action handling - fixes problem introduced in 8768ec8a7260b7dd46c28e601a398d493808edeb
[cosmetic] suppresses gcc parenthesis warning. Thx @vdrfan
keymap: fix sixaxis gamepad keymapping

Values below starting at 256 are reserved for KEY_BUTTON_*,
use some other unused key id for the GUIDE button. This button
is only virtual since it's mapped from a CEC event
removed: BackGroundInfo Loader multithreading (no longer needed)
Detect SSE2 support

Compilation on an older 32-bit Athlon XP chip fails with the error
"./Utils/AEUtil.h:50:12: error: '__m128i' does not name a type"
This is because the __m128i type is only available on SSE2 platforms.
Modify the preprocessor logic to detect SSE and SSE2 support separately.

The "emmintrin.h" header should only be included on SSE2 platforms as
well.