Commit Graph

793 Commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks 4fe76a85ae filter-blur: Fix some warnings 2019-10-13 07:28:12 +02:00
Michael Fabian 'Xaymar' Dirks bbcbd0fa1e filter-color-grade: Fix and improve various problematic locations 2019-10-13 07:27:59 +02:00
Michael Fabian 'Xaymar' Dirks e07d7c01fc filter-displacement: Fix and improve various problematic locations 2019-10-13 07:27:42 +02:00
Michael Fabian 'Xaymar' Dirks 098c0d80cd cmake: Further improve the version template 2019-10-13 07:26:13 +02:00
Michael Fabian 'Xaymar' Dirks ef5e6ac896 filter-dynamic-mask: Catch const exceptions 2019-10-13 07:08:56 +02:00
Michael Fabian 'Xaymar' Dirks 06d9a3d2f5 filter-transform: Catch and log exceptions 2019-10-13 07:08:02 +02:00
Michael Fabian 'Xaymar' Dirks 96466100b4 obs-source: Ensure that exceptions are const 2019-10-13 07:07:31 +02:00
Michael Fabian 'Xaymar' Dirks b5d3131203 filter-dynamic-mask: Fix some crashy locations 2019-10-13 07:02:04 +02:00
Michael Fabian 'Xaymar' Dirks 0ef94aad0f gs-vertexbuffer: Fix and improve various problematic locations 2019-10-13 06:38:15 +02:00
Michael Fabian 'Xaymar' Dirks 45d2431ef5 source-mirror: Fix and improve various problematic locations 2019-10-13 06:20:41 +02:00
Michael Fabian 'Xaymar' Dirks 5e50d64b8f cmake: Disable Spectre warnings 2019-10-13 06:16:46 +02:00
Michael Fabian 'Xaymar' Dirks fd0b79e97d utility-event: Remove unused event handler 2019-10-13 05:58:53 +02:00
Michael Fabian 'Xaymar' Dirks f1a376d44b cmake: Add commit to version.hpp template
Switches out the `const uint16_t` for actual defines, which are easier to deal with and work in C out of the box.
2019-10-13 05:54:20 +02:00
Michael Fabian 'Xaymar' Dirks aeb34450f6 cmake: Add commit hash to installer file name 2019-10-13 05:43:45 +02:00
Michael Fabian 'Xaymar' Dirks 2ba8e9a994 cmake: Reformat 2019-10-13 05:42:54 +02:00
Michael Fabian 'Xaymar' Dirks e02225262c obs-source: Add noexcept try-catch to C facing callbacks 2019-09-07 21:35:32 +02:00
Michael Fabian 'Xaymar' Dirks d6f1979dee project: Fix missing returns 2019-09-07 21:28:54 +02:00
Michael Fabian 'Xaymar' Dirks 5a4d38d249 project: Fix a massive list of dangerous warnings
This is a massive improvement to stability and safety when using the plugin, as all exceptions should now no longer be leaked into C controlled code, which can't actually handle exceptions at all.

Warnings fixed:

* Potentially throwing exception during library load.
* Possibly throwing function passed to C.
* Statement does nothing.
* Variable is initialized but not referenced.
* Variable overloads variable in parent scope.
2019-09-05 18:42:28 +02:00
Michael Fabian 'Xaymar' Dirks 66cc3c9926 cmake: Don't warn about not explicitly handled cases in MSVC 2019-09-05 18:10:22 +02:00
Michael Fabian 'Xaymar' Dirks 2a4a3bf501 util-memory: Cast to intptr_t 2019-09-05 18:09:33 +02:00
Michael Fabian 'Xaymar' Dirks 4c44496b87 source-mirror: Handle uncaught exceptions in C callbacks
Fixes various crashes and undefined behavior due to exceptions falling into C code where they now wreak havoc with the current stack.
2019-09-04 20:52:37 +02:00
Michael Fabian 'Xaymar' Dirks f65dfcbbf0 filter-blur: Don't throw exceptions into C code
It is extremely problematic to throw C++ exceptions into C code, especially because C code usually does not handle C++ exceptions at all. Therefore we have to prevent any exception from leaving the function and define it as noexcept.
2019-09-04 20:43:40 +02:00
Michael Fabian 'Xaymar' Dirks 4ab609015c cmake: Ignore more noise warnings in MSVC 2019-09-04 20:31:18 +02:00
Michael Fabian 'Xaymar' Dirks f61cdeb582 utility-event: Fix compile errors 2019-09-04 20:30:16 +02:00
Michael Fabian 'Xaymar' Dirks 29ab00633c utility-event: Safer event handling with proper lifetime
The util::event code suffers from the problem that it could call into a class that no longer exists, corrupting memory or even crashing. By tracking lifetime using std::weak_ptr<void> this can be avoided and the dead listeners can be automatically removed.
2019-09-04 16:36:32 +02:00
Michael Fabian 'Xaymar' Dirks 5b5a2cd409 cmake: Don't override diagnostics mode in MSVC
This breaks MSVC somehow.
2019-09-04 04:02:58 +02:00
Michael Fabian 'Xaymar' Dirks c6f75930af cmake: Disable even more MSVC warnings 2019-09-04 03:55:15 +02:00
Michael Fabian 'Xaymar' Dirks 56ee81e2a4 cmake: Disable additional MSVC warnings 2019-09-04 03:47:53 +02:00
Michael Fabian 'Xaymar' Dirks b3eaa6c43e cmake: Disable warning 4201 and 4514 in MSVC 2019-09-04 03:43:43 +02:00
Michael Fabian 'Xaymar' Dirks b63796d3ae cmake: Revert previous commit 2019-09-04 03:32:18 +02:00
Michael Fabian 'Xaymar' Dirks d9e2fbe5c1 cmake: Set Warnings and standard before project call 2019-09-04 03:23:00 +02:00
Michael Fabian 'Xaymar' Dirks da9124fc1a util-memory: Avoid MSVC specific C++ and use Std++ if available 2019-09-04 03:22:05 +02:00
Michael Fabian 'Xaymar' Dirks 82faab4380 project: Re-apply formatting 2019-09-04 03:03:41 +02:00
Michael Fabian 'Xaymar' Dirks ce7e4c97d4 project: Don't use non-standard strcmpi 2019-09-04 03:02:19 +02:00
Michael Fabian 'Xaymar' Dirks 03c704de1a project: Correct usage of exceptions and include stdexcept 2019-09-04 02:59:04 +02:00
Michael Fabian 'Xaymar' Dirks 4765c57828 filter-sdf-effects: Don't define structs in nameless unions 2019-09-04 02:49:04 +02:00
Michael Fabian 'Xaymar' Dirks f27320c6c9 project: Remove use of P_INITIALIZER
Does not support cross-platform very well and breaks on Apple for no apparent reason.

Add resolution scale to shader filter.
2019-09-04 02:47:27 +02:00
Michael Fabian 'Xaymar' Dirks 9ace96285d filter-dynamic-mask: Use snprintf instead of sprintf_s 2019-09-04 02:39:59 +02:00
Michael Fabian 'Xaymar' Dirks 2e98c2e754 color-grade: Fix and improve advanced options
These new options allow further control over the Tint tool in Color grading.
2019-09-04 02:18:40 +02:00
Michael Fabian 'Xaymar' Dirks 781307fbe6 color-grade: Add further Tint options 2019-09-04 01:41:15 +02:00
Michael Fabian 'Xaymar' Dirks 3f77c32de5 ci: Remove left over debug console.log line 2019-09-03 23:42:07 +02:00
Michael Fabian 'Xaymar' Dirks f614518b57 ci: Only build tags on AppVeyor 2019-09-03 23:40:06 +02:00
Michael Fabian 'Xaymar' Dirks ebb518186d ci: Integrate Github Actions as a CI Provider
Integrates Github Actions which is much much faster than AppVeyor in all areas, and even supports multiple workflows instead of forcing everything into just one workflow like AppVeyor does. Plus we get 20 parallel builds that nearly instantly finish, which results in much faster feedback without having to run our own Jenkins CI.

The builder and packager scripts have been adjusted to add support for both Windows and Linux, and both AppVeyor and Github Actions. Additionally to that, the builder script now correctly executes x32 and x64 steps in a chain, instead of waiting for the other architecture to finish first. This further reduces build times.
2019-09-03 23:27:35 +02:00
Michael Fabian 'Xaymar' Dirks 2b35328fcb project: Support for OBS v24.0.0-rc2 2019-09-03 21:26:10 +02:00
Michael Fabian Dirks 6857859252
locale: New translations 2019-09-03 21:20:31 +02:00
Michael Fabian 'Xaymar' Dirks 6cb776576c ci: Enable cache again 2019-08-24 13:11:23 +02:00
Michael Fabian 'Xaymar' Dirks 0ad41767a5 ci: Clear cache because it's storing broken libobs 2019-08-24 13:10:53 +02:00
Michael Fabian 'Xaymar' Dirks deeb6719c4 project: Apply formatting 2019-08-24 12:59:32 +02:00
Michael Fabian 'Xaymar' Dirks 8beaf49d10 cmake: Update libobs to 24.0.0-rc1 2019-08-24 06:47:03 +02:00
Michael Fabian Dirks b83b6fa5a5
locale: New Crowdin translations (#74) 2019-08-16 15:44:41 +02:00