diff options
author | Frank Neumann <fnu@yavdr.org> | 2017-05-21 21:05:19 +0200 |
---|---|---|
committer | Frank Neumann <fnu@yavdr.org> | 2017-05-21 21:05:19 +0200 |
commit | 9884f8d092d846605ebb9359a68317437b42f7b1 (patch) | |
tree | 9ed5df97a936533a9764fed2aba9c015804187fd | |
parent | e53424ba0ba5f75015bddf1fbaf2dadc5623fa7e (diff) | |
download | vdr-plugin-text2skin-9884f8d092d846605ebb9359a68317437b42f7b1.tar.gz vdr-plugin-text2skin-9884f8d092d846605ebb9359a68317437b42f7b1.tar.bz2 |
Commit static-std-string.diff (thx mini73)
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | common.c | 8 | ||||
-rw-r--r-- | common.h | 2 | ||||
-rw-r--r-- | display.c | 12 | ||||
-rw-r--r-- | display.h | 2 | ||||
-rw-r--r-- | render.c | 2 |
6 files changed, 17 insertions, 10 deletions
@@ -10,6 +10,7 @@ VDR Plugin 'text2skin' Revision History http://www.vdr-portal.de/board17-developer/board25-patches/p914968-patch-f%C3%BCr-text2skin-channelnames4reruns/#post914968 - Commit common_c.diff most probably by Christian Winninger (unknown source) - Commit status_c.diff most probably by Gerald Dachs (unknown source) +- Commit static-std-string.diff by Lars Hanisch (unknown source) 2011-11-06: Version 1.3.2 @@ -9,11 +9,13 @@ #define FRONTEND_DEVICE "/dev/dvb/adapter%d/frontend%d" -const std::string &SkinPath(void) +const std::string SkinPath(void) { // should never change - static std::string path = cPlugin::ConfigDirectory(PLUGIN_NAME_I18N); - return path; + static cString path; + if ((*path == NULL) || (strlen(*path) == 0)) + path = cPlugin::ConfigDirectory(PLUGIN_NAME_I18N); + return std::string(*path); } const char *ChannelNumber(const cChannel *Channel, int Number) @@ -35,7 +35,7 @@ class cRecording; // helper functions -const std::string &SkinPath(void); +const std::string SkinPath(void); const char *ChannelNumber(const cChannel *Channel, int Number); const char *ChannelName(const cChannel *Channel, int Number); const char *ChannelShortName(const cChannel *Channel, int Number); @@ -1393,8 +1393,6 @@ cxType cText2SkinDisplayMenu::GetTokenData(const txToken &Token) // --- cText2SkinDisplayTracks ------------------------------------------------ -const std::string ChannelNames[] = { "", "stereo", "left", "right" }; - cText2SkinDisplayTracks::cText2SkinDisplayTracks(cText2SkinLoader *Loader, const char *Title, int NumTracks, const char * const *Tracks): cText2SkinRender(Loader, cxDisplay::audioTracks), @@ -1414,9 +1412,15 @@ cText2SkinDisplayTracks::~cText2SkinDisplayTracks() { } -const std::string &cText2SkinDisplayTracks::ChannelName(int AudioChannel) +const char *cText2SkinDisplayTracks::ChannelName(int AudioChannel) { - return ChannelNames[AudioChannel + 1]; + switch (AudioChannel) + { + case 0: return "stereo"; + case 1: return "left"; + case 2: return "right"; + } + return ""; } void cText2SkinDisplayTracks::SetTrack(int Index, const char * const *Tracks) @@ -225,7 +225,7 @@ protected: virtual void SetMaxItems(int MaxItems) { mMaxItems = MaxItems; } public: - static const std::string &ChannelName(int AudioChannel); + static const char *ChannelName(int AudioChannel); cText2SkinDisplayTracks(cText2SkinLoader *Loader, const char *Title, int NumTracks, const char * const *Tracks); @@ -900,7 +900,7 @@ cxType cText2SkinRender::GetTokenData(const txToken &Token) } case tAudioChannel: - return cText2SkinDisplayTracks::ChannelName(cDevice::PrimaryDevice()->GetAudioChannel()); + return cxType(cText2SkinDisplayTracks::ChannelName(cDevice::PrimaryDevice()->GetAudioChannel())); default: return Text2SkinStatus.GetTokenData(Token); } |