summaryrefslogtreecommitdiff
path: root/src/utils/sdl2logger.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/sdl2logger.cpp')
-rw-r--r--src/utils/sdl2logger.cpp161
1 files changed, 0 insertions, 161 deletions
diff --git a/src/utils/sdl2logger.cpp b/src/utils/sdl2logger.cpp
deleted file mode 100644
index 9edac9a29..000000000
--- a/src/utils/sdl2logger.cpp
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2017 The ManaPlus Developers
- *
- * This file is part of The ManaPlus Client.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef USE_SDL2
-
-#include "utils/sdl2logger.h"
-
-#include "utils/checkutils.h"
-
-PRAGMA48(GCC diagnostic push)
-PRAGMA48(GCC diagnostic ignored "-Wshadow")
-#include <SDL_assert.h>
-#include <SDL_log.h>
-PRAGMA48(GCC diagnostic pop)
-
-#include "debug.h"
-
-#define logStr(category, msg) \
- case category: \
- message.append(msg); \
- break
-
-// before 2.0.4 this names not exists
-#if !SDL_VERSION_ATLEAST(2, 0, 4)
-#define SDL_AssertState SDL_assert_state
-#define SDL_AssertData SDL_assert_data
-#endif // !SDL_VERSION_ATLEAST(2, 0, 4)
-
-static void logCallback(void *userData A_UNUSED,
- int category,
- SDL_LogPriority priority,
- const char *msg)
-{
- std::string message("SDL ERROR:");
- switch (priority)
- {
- logStr(SDL_LOG_PRIORITY_VERBOSE,
- " VERBOSE");
- logStr(SDL_LOG_PRIORITY_DEBUG,
- " DEBUG");
- logStr(SDL_LOG_PRIORITY_INFO,
- " INFO");
- logStr(SDL_LOG_PRIORITY_WARN,
- " WARN");
- logStr(SDL_LOG_PRIORITY_ERROR,
- " ERROR");
- logStr(SDL_LOG_PRIORITY_CRITICAL,
- " CRITICAL");
- case SDL_NUM_LOG_PRIORITIES:
- default:
- message.append(" ?");
- break;
- }
-
- switch (category)
- {
- logStr(SDL_LOG_CATEGORY_APPLICATION,
- " APPLICATION");
- logStr(SDL_LOG_CATEGORY_ERROR,
- " ERROR");
- logStr(SDL_LOG_CATEGORY_ASSERT,
- " ASSERT");
- logStr(SDL_LOG_CATEGORY_SYSTEM,
- " SYSTEM");
- logStr(SDL_LOG_CATEGORY_AUDIO,
- " AUDIO");
- logStr(SDL_LOG_CATEGORY_VIDEO,
- " VIDEO");
- logStr(SDL_LOG_CATEGORY_RENDER,
- " RENDER");
- logStr(SDL_LOG_CATEGORY_INPUT,
- " INPUT");
- logStr(SDL_LOG_CATEGORY_TEST,
- " TEST");
- logStr(SDL_LOG_CATEGORY_RESERVED1,
- " RESERVED1");
- logStr(SDL_LOG_CATEGORY_RESERVED2,
- " RESERVED2");
- logStr(SDL_LOG_CATEGORY_RESERVED3,
- " RESERVED3");
- logStr(SDL_LOG_CATEGORY_RESERVED4,
- " RESERVED4");
- logStr(SDL_LOG_CATEGORY_RESERVED5,
- " RESERVED5");
- logStr(SDL_LOG_CATEGORY_RESERVED6,
- " RESERVED6");
- logStr(SDL_LOG_CATEGORY_RESERVED7,
- " RESERVED7");
- logStr(SDL_LOG_CATEGORY_RESERVED8,
- " RESERVED8");
- logStr(SDL_LOG_CATEGORY_RESERVED9,
- " RESERVED9");
- logStr(SDL_LOG_CATEGORY_RESERVED10,
- " RESERVED10");
- logStr(SDL_LOG_CATEGORY_CUSTOM,
- " CUSTOM");
- default:
- message.append(" ?");
- break;
- }
- reportAlways("%s %s",
- message.c_str(),
- msg);
-}
-
-static SDL_AssertState assertCallback(const SDL_AssertData *data,
- void *userdata A_UNUSED)
-{
- reportAlways(
- "SDL assert at %s (%s:%d):\n%s",
- data->function,
- data->filename,
- data->linenum,
- data->condition);
- return SDL_ASSERTION_IGNORE;
-}
-
-void SDL2Logger::init()
-{
-#ifdef UNITTESTS
-#if SDL_VERSION_ATLEAST(2, 0, 4)
- SDL_LogSetAllPriority(SDL_LOG_PRIORITY_WARN);
-#else // SDL_VERSION_ATLEAST(2, 0, 4)
- // versions below 2.0.4 report OpenGL error even if OpenGL was not used
- SDL_LogSetAllPriority(SDL_LOG_PRIORITY_CRITICAL);
-#endif // SDL_VERSION_ATLEAST(2, 0, 4)
-#else // UNITTESTS
-
- SDL_LogSetAllPriority(SDL_LOG_PRIORITY_VERBOSE);
-#endif // UNITTESTS
-
- SDL_LogSetOutputFunction(&logCallback, nullptr);
- SDL_SetAssertionHandler(&assertCallback, nullptr);
-}
-
-void SDL2Logger::setLogLevel(const int level)
-{
- if (level > 0)
- SDL_LogSetAllPriority(static_cast<SDL_LogPriority>(level));
- else
- SDL_LogResetPriorities();
-}
-
-#endif // USE_SDL2