diff options
author | Vas Crabb <vas@vastheman.com> | 2021-12-02 08:04:41 +1100 |
---|---|---|
committer | Vas Crabb <vas@vastheman.com> | 2021-12-02 08:04:41 +1100 |
commit | 1c8ba9d5c86e42520f026ff029e2b1df5e7acd82 (patch) | |
tree | 30b06bf8fbfbb4895e4f1e763d512838de1022fa /src/osd | |
parent | 404b7add29e35e5f16c6b821845db1335f506730 (diff) |
Fixed a few coverity errors, several of which are real bugs.
Diffstat (limited to 'src/osd')
-rw-r--r-- | src/osd/modules/opengl/gl_shader_mgr.cpp | 14 | ||||
-rw-r--r-- | src/osd/modules/sound/sdl_sound.cpp | 5 |
2 files changed, 8 insertions, 11 deletions
diff --git a/src/osd/modules/opengl/gl_shader_mgr.cpp b/src/osd/modules/opengl/gl_shader_mgr.cpp index a4f01bca611..ea09a7fa6a3 100644 --- a/src/osd/modules/opengl/gl_shader_mgr.cpp +++ b/src/osd/modules/opengl/gl_shader_mgr.cpp @@ -161,35 +161,33 @@ glsl_shader_info *glsl_shader_init(osd_gl_context *gl_ctx) #endif } if (err) return nullptr; - return (glsl_shader_info *) malloc(sizeof(glsl_shader_info *)); + return new glsl_shader_info{ 0 }; } int glsl_shader_free(glsl_shader_info *shinfo) { - int i,j; - pfn_glUseProgramObjectARB(0); // back to fixed function pipeline glFinish(); - for (i=0; i<GLSL_VERTEX_SHADER_MAX_NUMBER+9; i++) + for (int i=0; i<GLSL_VERTEX_SHADER_MAX_NUMBER+9; i++) { if ( glsl_mamebm_vsh_shader[i] ) (void) gl_delete_shader(nullptr, &glsl_mamebm_vsh_shader[i], nullptr); } - for (j=0; j<GLSL_SHADER_FEAT_MAX_NUMBER+9; j++) + for (int j=0; j<GLSL_SHADER_FEAT_MAX_NUMBER+9; j++) { if ( glsl_mamebm_fsh_shader[j] ) (void) gl_delete_shader(nullptr, nullptr, &glsl_mamebm_fsh_shader[j]); } - for (j=0; j<GLSL_SHADER_FEAT_MAX_NUMBER+9; j++) + for (int j=0; j<GLSL_SHADER_FEAT_MAX_NUMBER+9; j++) { if ( glsl_mamebm_programs[j] ) (void) gl_delete_shader( &glsl_mamebm_programs[j], nullptr, nullptr); } - for (i=0; i<10; i++) + for (int i=0; i<10; i++) { if ( glsl_scrn_vsh_shader[i] ) (void) gl_delete_shader(nullptr, &glsl_scrn_vsh_shader[i], nullptr); @@ -199,7 +197,7 @@ int glsl_shader_free(glsl_shader_info *shinfo) (void) gl_delete_shader( &glsl_scrn_programs[i], nullptr, nullptr); } - free(shinfo); + delete shinfo; return 0; } diff --git a/src/osd/modules/sound/sdl_sound.cpp b/src/osd/modules/sound/sdl_sound.cpp index 19689541858..86917eeeb07 100644 --- a/src/osd/modules/sound/sdl_sound.cpp +++ b/src/osd/modules/sound/sdl_sound.cpp @@ -335,7 +335,6 @@ int sound_sdl::init(const osd_options &options) int n_channels = 2; int audio_latency; SDL_AudioSpec aspec, obtained; - char audio_driver[16] = ""; if (LOG_SOUND) sound_log = std::make_unique<std::ofstream>(SDLMAME_SOUND_LOG); @@ -350,8 +349,8 @@ int sound_sdl::init(const osd_options &options) } osd_printf_verbose("Audio: Start initialization\n"); - strncpy(audio_driver, SDL_GetCurrentAudioDriver(), sizeof(audio_driver)); - osd_printf_verbose("Audio: Driver is %s\n", audio_driver); + char const *const audio_driver = SDL_GetCurrentAudioDriver(); + osd_printf_verbose("Audio: Driver is %s\n", audio_driver ? audio_driver : "not initialized"); sdl_xfer_samples = SDL_XFER_SAMPLES; stream_in_initialized = 0; |