File indexing completed on 2024-04-14 04:45:51
0001 /* 0002 SPDX-FileCopyrightText: 2019 Nicolas Carion 0003 This file is part of Kdenlive. See www.kdenlive.org. 0004 0005 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0006 */ 0007 0008 #include "core.h" 0009 #include "fuzzing.hpp" 0010 #include "logger.hpp" 0011 #include <QApplication> 0012 #include <csignal> 0013 #include <cstring> 0014 #include <iostream> 0015 #include <sstream> 0016 0017 void signalHandler(int signum) 0018 { 0019 std::cout << "Interrupt signal (" << signum << ") received.\n"; 0020 0021 Logger::print_trace(); 0022 0023 exit(signum); 0024 } 0025 0026 int main(int argc, char **argv) 0027 { 0028 signal(SIGINT, signalHandler); 0029 signal(SIGTERM, signalHandler); 0030 signal(SIGABRT, signalHandler); 0031 signal(SIGSEGV, signalHandler); 0032 QApplication app(argc, argv); 0033 qputenv("MLT_TESTS", QByteArray("1")); 0034 Core::build(false); 0035 std::stringstream ss; 0036 std::string str; 0037 while (getline(std::cin, str)) { 0038 ss << str << std::endl; 0039 } 0040 std::cout << "executing " << ss.str() << std::endl; 0041 fuzz(ss.str()); 0042 Logger::print_trace(); 0043 return 0; 0044 }