FIX: avoid waiting forever on a locked CPluginDirectory while exiting
FIX: Consistenly look for fonts in special//home, then special://xbmc
Sort buttons depend directly on available sort methods
Python: Add a DelayedCallGuard to xbmc.executeJSONRPC.

Avoids locking other python threads running on the same process space as XBMC, since executeJSONRPC may trigger activity on them.
FIX: [stagefright] ignore frames with no valid pts
[rendercapture] Fix passthrough rendercapture interface

The RenderCapture function doesn't behave correctly for passthough video renderers,
and in fact segfaults on Pi when setting a bookmark.

There is no need to do a glReadPixels to get a video snapshot in the passthrough case,
so provide a shortcut.
[rbp] Support grabbing just the video layer through rendercapture

As the bookmark snapshot doesn't want the OSD (and neither does boblight)
allow video, or video + GUI to be selectable.

While we're there, making the GPU do the red/blue swap and stride packing saves some cpu.

Requires updated firmware
[addons] add Gotham repositoy
fix #3166: use URIUtils::AddFileToFolder
[LangCodeExpander] Add method CompareLangCodes(const CStdString& code1, const CStdString& code2).
Its purpose is to determine if two languages given as ISO 639-1, ISO 639-2/T, or ISO 639-2/B codes represent the same language.
[LangCodeExpander] Add method CompareFullLangNames(const CStdString& lang1, const CStdString& lang2).
Its purpose is to determine if two english language names represent the same language.
For example "Abkhaz" and "Abkhazian" represent the same language.
[DVD/OMXPlayer] Fix auto-selection of audio and subtitle streams by using a generic language compare method.
XBMC's audio and subtitle language is stored as an ISO 639-2 T code, but a video's metadata could also store it as an ISO 639-2 B code which could differ from the T variant.
ActiveAE: fix toggling stereo upmix for spdif
ActiveAE: fix channel layout for audiophile mode
guilib: add input validation functionality to CGUIEditControl
settings: implement input validation for edit controls
CGUILabel: introduce <invalidcolor> support
smartplaylists: add support for input validation
[confluence] add <invalidcolor> for edit controls and in SettingsCategory.xml
[confluence] support invalid input in SmartPlaylistRule.xml