Correct platform detection to reallow other platforms beside SDL

This commit is contained in:
Iwan Timmer
2015-08-02 15:19:07 +02:00
parent f4359840e4
commit 77bffa5193
3 changed files with 10 additions and 2 deletions

View File

@@ -140,7 +140,7 @@ int main(int argc, char* argv[]) {
help();
enum platform system = platform_check(config.platform);
if (system != 0) {
if (system == 0) {
fprintf(stderr, "Platform '%s' not found\n", config.platform);
exit(-1);
}

View File

@@ -46,8 +46,11 @@ enum platform platform_check(char* name) {
return OMX;
}
#endif
#ifdef HAVE_FAKE
if (std || strcmp(name, "fake") == 0)
return FAKE;
#endif
return 0;
}
DECODER_RENDERER_CALLBACKS* platform_get_video(enum platform system) {
@@ -64,8 +67,10 @@ DECODER_RENDERER_CALLBACKS* platform_get_video(enum platform system) {
case OMX:
return &decoder_callbacks_omx;
#endif
#ifdef HAVE_FAKE
case FAKE:
return &decoder_callbacks_fake;
#endif
}
return NULL;
}
@@ -76,7 +81,10 @@ AUDIO_RENDERER_CALLBACKS* platform_get_audio(enum platform system) {
case SDL:
return &audio_callbacks_sdl;
#endif
#ifdef HAVE_FAKE
default:
return &audio_callbacks_alsa;
#endif
}
return NULL;
}

View File

@@ -25,7 +25,7 @@
#define IS_EMBEDDED(SYSTEM) SYSTEM != SDL
enum platform { SDL, OMX, IMX, FAKE };
enum platform { NONE, SDL, OMX, IMX, FAKE };
enum platform platform_check(char*);
DECODER_RENDERER_CALLBACKS* platform_get_video(enum platform system);