Kp
57a3541424
Fix serial::pad for gcc 4.5
2014-06-21 23:21:30 +00:00
Kp
c016ace90b
Fix partial_range.h for gcc 4.5
2014-06-21 23:21:03 +00:00
Kp
2e95d8c0a8
Use array<> for Walls
2014-06-20 02:59:53 +00:00
Kp
d3ecca360c
Read matcen_info structures carefully
2014-06-20 02:59:53 +00:00
Kp
cb498b3b38
Make padding value customizable
2014-06-20 02:59:53 +00:00
Kp
958f452d2e
Improve UDT static_assert messages
2014-06-15 22:19:26 +00:00
Kp
488e46b562
Return reasonable type from deleted partial_range
...
Avoid secondary errors related to binding void as a range.
2014-06-14 01:15:33 +00:00
Kp
b5701bf202
Add __attribute__((warn_unused_result)) to partial_range
2014-06-08 00:05:33 +00:00
Kp
5c14cf870f
Add optional offset to partial_range
2014-06-08 00:05:33 +00:00
Kp
0257b9ca1c
Disallow using signed offsets with partial_range
2014-06-08 00:05:32 +00:00
zico
ad7cb106bc
Changed custom D1X license to GPLv3
2014-06-01 19:55:23 +02:00
Kp
9b0fb5da0a
Write eclip structures carefully
2014-02-01 18:55:18 +00:00
Kp
917ef39258
Use array<> for Vclip
2014-01-23 03:48:25 +00:00
Kp
a2427f58b5
Use special type to reduce pointer/index conversions
2014-01-12 19:32:12 +00:00
Kp
d246005c7e
Move object_create_explosion_sub pointer into loop
2014-01-12 00:33:08 +00:00
Kp
aac0ab26d7
Refactor _DEFINE_VALPTRIDX_SUBTYPE_USERTYPES
2014-01-11 18:20:33 +00:00
Kp
07a23cbaf2
Detect always-invalid valptridx indexes
2014-01-10 03:58:03 +00:00
Kp
f1a6757693
Use objptridx_t for obj_create
2014-01-10 03:20:11 +00:00
Kp
a748065fe5
Explicitly delete valptridx subtype default constructors
2014-01-06 04:17:57 +00:00
Kp
8218af34b5
Add special type to let obj_*link take either pointer or index
2014-01-03 04:04:04 +00:00
Kp
094dfbf3d4
Reduce header inclusions
2013-12-31 03:22:03 +00:00
Kp
745633eabe
Use vector to allow rendering unlimited robots
2013-12-29 04:54:08 +00:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00
Kp
dfbe78c214
Remove useless 'unused' field in grs_bitmap
...
Saves a realignment to pointer boundary.
2013-12-28 22:38:02 +00:00
Kp
2d274dba8b
Tighten SWAPINT
2013-12-28 22:37:00 +00:00
Kp
cc9f7f669d
Tighten definition of SWAPSHORT
2013-12-28 22:36:59 +00:00
Kp
1694eed536
Match PHYSFSX_readSXE?? return types to the internal type
2013-12-28 22:03:50 +00:00
Kp
7fb4c6307f
Add debug option -no-grab to prevent window grabbing
2013-12-22 20:56:55 +00:00
Kp
456c2d0bb0
Scrub control codes from stdout/file, but not HUD/console
2013-12-22 20:56:55 +00:00
Kp
a7bd19a7ca
Convert fvi to use countarray for segment list
...
Also fixes a bug where seglist could receive wrong elements when
fvi_sub recursive call returns a type other than HIT_NONE. Bug caused
by badly named variables:
int ii;
for (ii=0;i < temp_n_segs && *n_segs < MAX_FVI_SEGS-1;)
seglist[(*n_segs)++] = temp_seglist[ii++];
The wrong counter is used for first part of the conditional, so
uninitialized elements of temp_seglist could be read back if i
(==n_segs_visited) is smaller than temp_n_segs or elements could be
skipped if i is greater than temp_n_segs.
2013-12-22 20:56:53 +00:00
Kp
038bbad26a
Rearrange headers to build under all test modes
2013-12-22 20:56:35 +00:00
Kp
58e740c0bd
Remove unused declaration of Center_names
2013-12-22 20:56:35 +00:00
Kp
fe7c9fa444
Use countarray for HUD_messages
2013-12-22 20:56:33 +00:00
Kp
7894647bc9
Let PHYSFSX_puts receive optional string length
2013-12-22 20:13:22 +00:00
Kp
84a0dcba27
Rename con_puts length template
2013-12-22 20:12:41 +00:00
Kp
6de986d39c
Print file offset on read error
2013-12-22 20:02:26 +00:00
Kp
f269ed7374
Make Been_visited a local bit array
2013-12-22 05:29:25 +00:00
Kp
9a7185f770
Store warning segments in countarray object
2013-12-22 05:27:16 +00:00
Kp
a8e9f9f624
Store found segments in countarray object
...
Raise MAX_FOUND_SEGS to MAX_SEGMENTS to ease code reuse.
2013-12-22 01:54:15 +00:00
Kp
c31c67c587
Store selected segments in countarray object
2013-12-22 01:54:15 +00:00
Kp
b1c5307eb1
Use array for palette_array_t
2013-12-22 00:37:36 +00:00
Kp
e9f9cb676f
Centralize palette utilities
2013-12-22 00:05:13 +00:00
Kp
a3d66a3b37
Add typedef palette_array_t for palette data
2013-12-22 00:05:13 +00:00
Kp
11f7bc51ee
Use unsigned count of frames in a vclip
2013-12-22 00:05:13 +00:00
Kp
1e8036bd24
Split compiler.h for PCH compatibility
2013-12-21 05:12:38 +00:00
Kp
5d801ce386
Add #error diagnostics to compiler.h
2013-12-21 01:54:38 +00:00
Kp
fbf1f8a658
Annotate mem_malloc/calloc/realloc as __attribute__((alloc_size))
2013-12-20 03:33:32 +00:00
Kp
737fe73dd7
Annotate mem_malloc/mem_calloc as __attribute__((malloc))
2013-12-20 03:24:39 +00:00
Kp
e4b091dd38
Make ogl_pal a ubyte (*)[256*3] to improve checking
2013-12-20 03:19:40 +00:00
Kp
3bf16e57dc
Remove PHYSFSX_gets, PHYSFSX_readString
...
They do not check for a buffer overflow.
2013-12-20 03:16:46 +00:00
Kp
c561c3d514
Move multi_send_data_direct type into template parameter
...
Optimizing compilers may now delete the size check.
2013-12-20 03:08:19 +00:00
Kp
f0bae2c8cd
Add EVENT_WINDOW_CREATED to centralize window init/deinit logic
2013-12-20 02:51:24 +00:00
Kp
03821fab0d
Rely on libc strdup if DEBUG_MEMORY_ALLOCATIONS is unset
...
If !DEBUG_MEMORY_ALLOCATIONS, our strdup is not special. Rely on the
compiler one, which might be.
2013-12-19 03:31:24 +00:00
Kp
aba6c2dfee
Pass glow_values as array<> to retain size information
2013-12-19 03:31:24 +00:00
Kp
a40c19f770
Fix con_puts buffer overread
...
ASan reports a 2K read from a small string literal.
Also, fix silly double copy in con_add_buffer_line and delete too-short
memset in con_add_buffer_line.
2013-12-19 03:31:24 +00:00
Kp
2f18c5037d
Store group lists as countarray objects
2013-12-18 03:48:52 +00:00
Kp
e8de74b8bf
Reject inappropriate printf usage
2013-12-17 04:03:35 +00:00
Kp
21cc89e2c8
Use ui_dputs_at instead of ui_dprintf_at where possible
2013-12-17 04:03:34 +00:00
Kp
7efeb3f29d
Use PHYSFSX_puts instead of PHYSFSX_printf where possible
2013-12-17 04:03:34 +00:00
Kp
c3c1695ba5
Use gr_ustring instead of gr_uprintf where possible
2013-12-17 04:03:34 +00:00
Kp
1bf3722670
Use gr_string instead of gr_printf where possible
2013-12-17 04:03:34 +00:00
Kp
3d79fe9b40
Use editor_status instead of editor_status_fmt where possible
2013-12-17 04:03:34 +00: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
335cabcc79
Use con_puts instead of con_printf where possible
2013-12-17 04:03:34 +00:00
Kp
be041a9cfc
Add type checking for ui_create_dialog
2013-12-17 03:49:24 +00:00
Kp
d1fa9ff7a6
Simplify setup for ui_messagebox_n
2013-12-15 21:54:59 +00:00
Kp
3908215e73
Add type checking to nm_messagebox format string
2013-12-15 21:54:17 +00:00
Kp
cea46651fc
Check type of window handler function
2013-12-15 18:51:26 +00:00
Kp
cb4fd7c1b4
Compact known file extension storage
2013-12-13 03:58:01 +00:00
Kp
4dfceab50b
Factor out file extension filtering
2013-12-13 03:51:14 +00:00
Kp
07877853ba
Use static_assert where available
2013-12-13 03:44:02 +00:00
Kp
322c61ef01
Remove use of heap-based splitword
2013-12-08 21:43:53 +00:00
Kp
b7fe431979
Use RAII for playsave strings
2013-12-08 21:02:10 +00:00
Kp
3b9b5ebfb0
Use RAII to manage function-local heap objects
2013-12-08 19:04:52 +00:00
Kp
75c229c6bf
Normalize con_printf newline usage
2013-12-07 21:13:37 +00:00
Kp
61d8fe7cc8
Remove unused return value of gr_*printf / gr_*string
2013-12-07 18:44:07 +00:00
Kp
60727dd7d5
Add missing va_end calls
2013-12-07 18:42:50 +00:00
Kp
706b458699
Mark PHYSFSX_find* functions nonnull
2013-12-07 18:40:32 +00:00
Kp
a2cec5d71f
Switch PHYSFSX_fgets to auto-sized variant where possible
2013-12-07 18:39:19 +00:00
Kp
7f5410cc8b
Use lengthof instead of sizeof(A)/sizeof(A[0])
...
The latter form can accept pointers, but the template lengthof cannot.
2013-12-07 18:38:10 +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
eb84a067fa
Remove now unused fgets_unlimited
2013-12-06 03:28:59 +00:00
Kp
25c731cc2c
Probe for usable array template
2013-12-01 22:42:47 +00:00
Kp
d3637e7524
Invert sense of SysUseNiceFPS
2013-12-01 22:37:21 +00:00
Kp
d626b6c3d4
Add include guard to kdefs.h
2013-12-01 00:53:22 +00:00
Kp
6439e41e3a
Store SDL key name inline
2013-11-28 00:52:37 +00:00
Kp
386c193cae
Make med_functions const
2013-11-28 00:27:43 +00:00
Kp
e30f548d60
Invert sense of DbgAltTexMerge
2013-11-24 22:57:36 +00:00
Kp
761795e4c8
Invert sense of DbgBigPig
2013-11-24 22:57:36 +00:00
Kp
3b49e65f95
Invert sense of DbgUseDoubleBuffer
2013-11-24 22:57:36 +00:00
Kp
bbb9214e0e
Invert sense of hires/lowres options
2013-11-24 22:57:36 +00:00
Kp
8899120312
Remove SndDisableSdlMixer when mixer=0
2013-11-24 22:57:36 +00:00
Kp
9b167689ba
Remove unused variable joy_num_axes
2013-11-09 05:08:37 +00:00
Kp
f11e787ef3
Use helper for bounding check
2013-11-08 03:14:44 +00:00
Kp
ed8484f096
Remove unnecessary packing on vms_vector
2013-11-08 03:14:43 +00:00
Kp
9dec31d801
Remove unused vms_svec
2013-11-01 02:58:05 +00:00
Kp
663d81cc8f
Remove unused function med_rotate_segment_ang
2013-10-29 03:24:43 +00:00
Kp
be777c78a3
Remove unused function med_copy_segment
2013-10-29 03:24:43 +00:00
Kp
50392e9a3c
Mark OpenGL loader functions static
2013-10-29 03:24:42 +00:00
Kp
8ed99faf5c
Make headers freestanding
2013-10-26 03:50:28 +00:00
Kp
9e1c33cca3
Rename struct _grs_* to struct grs_* for consistency
2013-10-26 03:50:28 +00:00
Kp
980621b9d4
Move similar/editor/med.c -> similar/editor/med.cpp
2012-11-17 06:14:09 +00:00
Kp
7de558490f
Move similar/editor/kfuncs.c -> similar/editor/kfuncs.cpp
2012-11-17 06:14:09 +00:00
Kp
65b809b218
Move similar/editor/info.c -> similar/editor/info.cpp
2012-11-17 06:14:09 +00:00
Kp
f95d401926
Move similar/editor/group.c -> similar/editor/group.cpp
2012-11-17 06:14:09 +00:00
Kp
1d073475e7
Mark various headers for C linkage
2013-10-20 22:49:11 +00:00
Kp
24ac83d88c
Make PLAYER_DIRECTORY_STRING work in C++
2013-10-19 17:03:11 +00:00
Kp
00f0fddabc
Centralize handling of SysUsePlayersDir
2013-10-06 21:04:29 +00:00
Kp
2dddf084e0
Move similar/editor/eobject.c -> similar/editor/eobject.cpp
2013-10-05 23:10:44 +00:00
Kp
57a0b23ae4
Move similar/editor/elight.c -> similar/editor/elight.cpp
2013-10-05 23:09:01 +00:00
Kp
21c9e11811
Move similar/editor/centers.c -> similar/editor/centers.cpp
2013-10-05 23:07:23 +00:00
Kp
bd467b4140
Move similar/main/inferno.c -> similar/main/inferno.cpp
2013-10-05 21:35:58 +00:00
Kp
4db024f953
Move similar/main/gamesave.c -> similar/main/gamesave.cpp
2013-10-05 21:35:58 +00:00
Kp
e5ee9b72f1
Move similar/main/aipath.c -> similar/main/aipath.cpp
2013-10-05 21:35:58 +00:00
Kp
b4107e6526
Remove duplicate declarations
2013-10-03 03:11:52 +00:00
Kp
c58c4e4d06
Move declarations to headers
2013-10-03 03:11:52 +00:00
Kp
e2b7b802e3
Move similar/arch/sdl/digi.c -> similar/arch/sdl/digi.cpp
2013-10-01 02:53:23 +00:00
Kp
4863c42c9d
Move similar/3d/interp.c -> similar/3d/interp.cpp
2013-10-01 02:53:09 +00:00
Kp
4d026f8b69
Move similar/2d/pcx.c -> similar/2d/pcx.cpp
2013-10-01 02:53:09 +00:00
Kp
fce2717e83
Move similar/arch/sdl/jukebox.c -> similar/arch/sdl/jukebox.cpp
2013-10-01 02:53:09 +00:00
Kp
ace3238790
Move similar/arch/sdl/digi_mixer.c -> similar/arch/sdl/digi_mixer.cpp
2013-10-01 02:53:09 +00:00
Kp
aa9127e3c1
Enable -Wwrite-strings
2013-09-15 21:34:03 +00:00
Kp
ef218b7665
Simplify pilot deletion
2013-09-15 21:34:03 +00:00
Kp
4e177dd3fa
Move common/arch/win32/messagebox.c -> common/arch/win32/messagebox.cpp
2013-09-02 23:59:31 +00:00
Kp
cc90678647
Move common/arch/sdl/digi_mixer_music.c -> common/arch/sdl/digi_mixer_music.cpp
2013-09-02 23:59:31 +00:00
Kp
5bafa16e7f
Fix level load hang on >=mingw32-gcc-4.7
...
Starting in gcc 4.7 "Windows mingw targets are using the -mms-bitfields
option by default." <http://gcc.gnu.org/gcc-4.7/changes.html >. This
causes __attribute__((packed)) not to be effective on structures that
are used to express the layout of on-disk data. In turn, that causes
piggy.c to mishandle texture loads, eventually resulting in an infinite
loop. Add a pragma pack to force the headers to pack tightly on
Windows.
2013-08-25 17:16:41 +00:00
Kp
af52e78a50
Move similar/arch/ogl/ogl.c -> similar/arch/ogl/ogl.cpp
2013-08-24 17:10:35 +00:00
Kp
d909692148
Allow compiler to unroll pow2ize
2013-08-24 16:44:23 +00:00
Kp
20cf3f4cdb
Mark various OGL functions static
2013-08-24 16:44:23 +00:00
Kp
8ef8371563
Use unsigned screen width/height
2013-08-24 16:44:23 +00:00
Kp
afd2f5aea1
Remove unused GET/PUT_INTEL_INT64
2013-08-11 20:40:24 +00:00
Kp
4e6142d779
Move similar/arch/ogl/gr.c -> similar/arch/ogl/gr.cpp
2013-08-10 03:56:14 +00:00
Kp
9ba729ca3a
Print function and line when calling Error
2013-08-09 02:10:51 +00:00
Kp
2cd7748e93
Convert vsprintf to vsnprintf
2013-08-09 01:58:17 +00:00
Kp
a01dbc59d6
Make ui_messagebox_n static
2013-08-09 01:56:34 +00:00
Kp
a881ee455e
Remove fix.h
2013-08-08 03:01:48 +00:00
Kp
c02a249263
Make gr_bitmap_scale_to static
2013-08-07 02:42:25 +00:00
Kp
b81100d54d
Make OGL_VIEWPORT static inline
2013-08-07 02:39:43 +00:00
Kp
1fdc080c17
Move common/ui/keypad.c -> common/ui/keypad.cpp
2013-08-04 17:59:37 +00:00
Kp
000774f49d
Move common/ui/button.c -> common/ui/button.cpp
2013-08-04 17:57:20 +00:00
Kp
90b8cdbb1a
Move common/misc/strio.c -> common/misc/strio.cpp
2013-08-04 17:56:05 +00:00
Kp
3e950a6b42
Move common/misc/ignorecase.c -> common/misc/ignorecase.cpp
2013-08-04 17:55:04 +00:00
Kp
f8cb11d714
Move common/misc/hmp.c -> common/misc/hmp.cpp
2013-08-04 17:55:00 +00:00
Kp
09b1f8fab7
Move common/arch/sdl/window.c -> common/arch/sdl/window.cpp
2013-08-03 17:45:23 +00:00
Kp
97bea01c80
Move common/arch/sdl/rbaudio.c -> common/arch/sdl/rbaudio.cpp
2013-08-03 17:45:22 +00:00
Kp
9daacbdf81
Move common/arch/sdl/joy.c -> common/arch/sdl/joy.cpp
2013-08-03 17:45:22 +00:00
Kp
eb65b73b2a
Move common/3d/draw.c -> common/3d/draw.cpp
2013-08-03 17:45:22 +00:00
Kp
3c5c8a8068
Make arg processing static
2013-08-03 17:45:22 +00:00
Kp
69535df7fd
Compile out memory checker if not enabled
2013-07-28 23:20:33 +00:00