0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 04:42:18 +02:00
Commit Graph

34 Commits

Author SHA1 Message Date
Ryan Foster
39b4df12c8 libobs/util: Define PRAGMA_WARN_DEPRECATION for MSVC
Define PRAGMA_WARN_DEPRECATION for MSVC to enable using that define for
cross-platform code, which allows us to write slightly less code when we
need to suppress this warning.
2023-08-09 13:47:05 -04:00
Lain
106c7aa61f Update copyrights/names 2023-05-20 01:31:18 -07:00
Norihiro Kamae
593fb3d12d libobs: Remove newly introduced PRAGMA_WARN_STRINGOP_OVERFLOW macro
The macro PRAGMA_WARN_STRINGOP_OVERFLOW was introduced to suppress a
warning -Wstringop-overflow caused by a macro da_push_back_new calling
darray_push_back_new.
Extract the function in the macro to avoid the warning.
This will also enables checking the type check of the returned pointer.
2023-04-15 16:03:10 -07:00
tytan652
678b0287e6 libobs: Calm stringop-overflow warning on GCC
Those warnings appeared with GCC 12 with -O2, those are potentially
created by regression from GCC.
2023-01-19 13:08:46 -05:00
tytan652
c648222332 libobs,libobs-opengl,obs-ffmpeg-mux: Calm deprecation warnings on *nix
Calm libobs-opengl deprecation warnings on macOS.

Calm FFmpeg deprecation warning with LIBAVFORMAT_VERSION_MAJOR < 59.
2023-01-19 13:08:46 -05:00
tytan652
447f2869ab libobs: Remove OBS_UNUSED 2022-07-20 09:03:31 +02:00
tt2468
9168797361 libobs,obs-outputs: Fix librtmp1 interference
Details in #6226, basically this fixes an issue where OBS links
to the system-installed librtmp1, which is incompatible with our
librtmp.

Co-authored-by: ewhac <ewhac@ewhac.org>
2022-04-25 18:45:05 -07:00
jp9000
5e2c757cd1 libobs/util: Remove deprecation visibility from swig 2022-03-24 22:32:19 -07:00
PatTheMav
1fd7770548
libobs: Update CMakeLists.txt for libobs and associated libraries
Also updates libobs-opengl, libobs-d3d11, libobs-winrt
2022-03-16 23:11:08 +01:00
Jim
03d9bda387 libobs: Deprecate obs object addref functions
Deprecates:
obs_source_addref()
obs_output_addref()
obs_encoder_addref()
obs_service_addref()
obs_scene_addref()

These functions should be considered unsafe and not used. Instead, use:
obs_source_get_ref()
obs_output_get_ref()
obs_encoder_get_ref()
obs_service_get_ref()
obs_scene_get_ref()

These functions return a pointer to the incremented object only if the
object is still valid, otherwise they will return null, indicating that
the object is no longer valid or is unsafe to use.

The reason why this is being done is because certain third party plugins
seem to be using addref, and are somehow managing to call addref on
sources that have already been fully released. For the sake of safety,
almost all usage of these functions within OBS have also been replaced
as well.
2022-01-25 05:20:03 -08:00
Richard Stanway
b37acbcbc1 libobs: Add OBS_NORETURN and use it for crash handler
Fixes some analyzers flagging code after a crashing path makes it
impossible to reach.
2021-12-09 02:42:37 +01:00
jpark37
00f280ff9d libobs: Rename DEPRECATED to OBS_DEPRECATED
Avoid collisions with other libraries that define DEPRECATED.
2020-01-20 21:44:50 -08:00
jpark37
c17397fede libobs: Remove C99 hacks for older VC++ 2019-12-05 18:34:51 -08:00
jp9000
f53df7da64 clang-format: Apply formatting
Code submissions have continually suffered from formatting
inconsistencies that constantly have to be addressed.  Using
clang-format simplifies this by making code formatting more consistent,
and allows automation of the code formatting so that maintainers can
focus more on the code itself instead of code formatting.
2019-06-23 23:49:10 -07:00
Ryan Foster
be98cee2a0 Fix various typos across multiple modules 2017-04-25 22:39:42 -04:00
jp9000
eb6d8e10fa libobs/util: Do not ignore deprecation on windows
On MSVC, deprecated types/functions were being completely ignored by the
compiler due to this pragma.  Any plugins/programs that depended on this
would also have this warning disabled due to it being in this file.
This pragma was most likely originally done due to the MSVC warnings for
C-standard functions, which are now ignored via _CRT_SECURE_NO_WARNINGS
on all projects instead.
2016-12-08 03:27:38 -08:00
jp9000
b29d8a44d1 libobs: Fix deprecated macro
There's no need to have two separate macros to declare something as
deprecated.
2016-12-08 03:27:37 -08:00
jp9000
4e55cf1125 libobs/util: Add function deprecation defines 2015-12-11 16:45:31 -08:00
BtbN
cac6ad1822 Move config values from the commandline to obsconfig.h 2014-07-26 14:07:14 +02:00
Palana
56b3685940 Add include for ptrdiff_t 2014-06-17 17:02:28 +02:00
jp9000
8b8217f68e Fix a some more linux/GCC specific warnings 2014-02-14 15:56:01 -07:00
jp9000
966b943d5b Remove majority of warnings
There were a *lot* of warnings, managed to remove most of them.

Also, put warning flags before C_FLAGS and CXX_FLAGS, rather than after,
as -Wall -Wextra was overwriting flags that came before it.
2014-02-14 15:13:36 -07:00
jp9000
8aa2b01eb9 Fix __attribute__ usage
Requires two sets of parentheses, not one.  ...I think
2014-02-09 08:10:53 -07:00
jp9000
29fb9cc9f4 Fix FORCE_INLINE macro
Accidentally put the code within a _MSC_VER #ifdef, causing the macro to
not be found on non-VC compilers
2014-02-09 08:06:34 -07:00
jp9000
4be4dd735e Use force inlining of YUV conversion functions
Force inling of the 444->420 conversion functions because their CPU
usage goes up pretty heavily without it when compiling without
optimizations
2014-02-09 07:59:00 -07:00
jp9000
93d15ef254 Fix some formatting issues and fix cmake file 2014-01-25 12:34:37 -07:00
BtbN
6a9dda87bd Restructure installation and package generation 2014-01-25 19:13:33 +01:00
BtbN
45ec80fb7d Full rewrite of all CMakeLists
CMake now works on all platforms
2014-01-24 18:56:32 +01:00
jp9000
e9ded173f1 add my signal/callback interface from another project, also update license of utility files to ISC 1.3 2013-12-25 22:40:33 -07:00
jp9000
aead95f5e3 converted project to vs2013, removed 2010 support (ugh) 2013-12-14 16:01:30 -07:00
Palana
968f9c03bd use %u for size_t on microsoft compilers 2013-12-07 16:50:05 +01:00
jp9000
e1da9099f9 remove ssize_t because it's not even used anyway anymore 2013-11-23 11:12:44 -07:00
Peter SZTANOJEV
0301b24ace modernize header guards to #pragma once 2013-10-14 13:21:15 +02:00
jp9000
f255ae1922 first commit 2013-09-30 19:37:13 -07:00