Commit graph

32 commits

Author SHA1 Message Date
Kp e1aac6949a Replace __attribute_warn_unused_result with C++17 [[nodiscard]]
This eliminates a configure test, and may help readers understand the
annotation more readily.
2021-06-28 03:37:51 +00:00
Kp 15057af2f9 Replace __noreturn with C++11 [[noreturn]]
This allows non-GNU-C compilers to see the attribute.
2021-06-28 03:37:50 +00:00
Dmitry Grigoryev fbd05a1592 optimize include files (include what you use) 2021-02-06 21:38:50 +01:00
Kp b08dac2971 Simplify handling warning function 2018-12-30 00:43:58 +00:00
Kp 0f9db40e36 Simplify reporting fatal errors 2017-08-11 23:43:52 +00:00
Kp d085175cbd Scrub invalid primary textures at level load
Past releases, when rendering an invalid primary texture, would
Int3() and then reset the texture to zero.  Commit d767f7c changed the
logic to return without resetting the texture, since the reset seemed to
be unnecessary.  Unfortunately, it is necessary.  Some levels, including
those shipped with the retail game data, specify bogus primary textures
on some surfaces.  After d767f7c, rendering a surface with an invalid
primary texture causes the surface to be invisible, even if it has a
valid secondary texture.

Remove the return statement added in d767f7c.  Extend
validate_segment_side to validate the primary texture on the tested
side.  When an invalid texture is found, reset it and log a diagnostic.
For built-in levels, log at level CON_VERBOSE since players cannot
readily fix the level.  For external levels, log at level CON_URGENT so
that level authors know to fix their level before releasing it.

Fixes: d767f7cd5e ("Pass vcsegptridx to render_face")
2016-12-22 05:21:16 +00:00
Kp 27d0a79acd Factor out reporting errors caused by bad levels 2016-10-17 03:49:32 +00:00
Kp fb6db67d94 Include file+line in UserError output 2016-04-03 17:50:42 +00:00
Kp 27cef20eb3 Move namespace dsx handling to dsx-ns.h 2016-03-19 19:08:10 +00:00
Kp fd53bb3738 Move #include <signal.h> out of namespace dcx
Reported-by: derhass <https://github.com/dxx-rebirth/dxx-rebirth/issues/170>
2015-12-23 03:28:17 +00:00
Kp dc8c0323d8 Uninline namespace dcx 2015-12-13 18:00:49 +00:00
Kp 5b9e50a815 Use inline namespace dcx for common/misc 2015-12-05 22:57:24 +00:00
Kp 3ceefb4189 Pass filename to Error 2015-10-11 22:21:00 +00:00
Kp 1d99084026 Use UserError when main hog is missing
Error traps to the debugger and then aborts, which is not appropriate
for a user setup error.
2015-10-09 02:46:11 +00:00
Kp 968cdbecf4 Add non-aborting UserError for user-caused fatal errors 2015-06-16 03:15:40 +00:00
Kp c8022a1001 Abstract socket array/sockaddr dispatch 2015-01-18 01:58:33 +00:00
Kp b86870f5ef Make d_debugbreak cold 2014-12-24 03:34:33 +00:00
Kp 78c3a6b770 Merge btb:pulls/21 into unification/master 2014-12-24 03:31:42 +00:00
Kp 6e24954a97 Mark warn_printf static 2014-12-13 04:10:58 +00:00
Bradley Bell 73690ed525 always_inline d_debugbreak() so that debugger stops in the source instead of dxxerror.h 2014-12-07 19:03:41 -08:00
Kp 33c118f999 Enable Int3 as d_debugbreak
Change Int3 from a no-op to a platform-specific trap to debugger.

Requested by btb: https://github.com/dxx-rebirth/dxx-rebirth/pull/18
2014-12-07 23:43:51 +00:00
zico ad7cb106bc Changed custom D1X license to GPLv3 2014-06-01 19:55:23 +02:00
Kp a99b07c98e Use Error_puts instead of Error where possible 2013-12-17 04:03:34 +00:00
Kp f82ba904bd Use Warning_puts instead of Warning where possible 2013-12-17 04:03:34 +00:00
Kp 9de54cfa74 Switch to C++ linkage
import fileinput
guard = 0
cxxguard = '#ifdef __cplusplus\n'
for line in fileinput.input(inplace=True):
	if line == cxxguard:
		guard = 1
		continue
	if guard:
		if line == 'extern "C" {\n':
			guard = 2
			continue
		if line == '}\n':
			guard = 0
			continue
		if guard == 2:
			assert(line == '#endif\n')
			guard = 0
			print cxxguard,
			continue
	print line,
2013-12-06 03:35:32 +00:00
Kp 9ba729ca3a Print function and line when calling Error 2013-08-09 02:10:51 +00:00
Kp 9daacbdf81 Move common/arch/sdl/joy.c -> common/arch/sdl/joy.cpp 2013-08-03 17:45:22 +00:00
Kp ff90315978 Use SConscript configure support to probe for format(printf) attribute 2013-07-27 22:17:13 +00:00
Kp a1ba420031 Mark various parameters and variables as const 2013-07-20 23:12:24 +00:00
Kp 012d8e249b Merge branch d1x-rebirth/master into unification/master 2013-07-19 22:32:28 +00:00
Kp 22e31c0e8d Remove unused argument to clear_warn_func 2013-06-08 23:12:44 +00:00
Kp 4044caeb2d Move */include/dxxerror.h -> common/include/dxxerror.h 2013-03-03 01:03:33 +00:00
Renamed from d1x-rebirth/include/dxxerror.h (Browse further)