Sam Hocevar
5957d69900
Upgrade autoconf scripts
3 jaren geleden
Sam Hocevar
b4b4a473cd
Fix off-by-one memory read in binary canvas import ( fixes #56 , #58 )
3 jaren geleden
Sam Hocevar
ac56185be2
Fix off-by-one memory read in ANSI import ( fixes #55 , #58 )
3 jaren geleden
Sam Hocevar
ab04483ee1
Fix buffer overflows in TGA and troff exports (addresses #53 , #54 )
These were all caused by sprintf() appending a null char that was not actually used.
Fixes CVE-2021-30498 and CVE-2021-30499.
3 jaren geleden
Sam Hocevar
c807fbb878
Clean up Visual Studio build files
3 jaren geleden
Sam Hocevar
e4968ba6e9
Fix a problem in the caca_resize() overflow detection and add several unit tests.
3 jaren geleden
Sam Hocevar
46b4ea7cea
canvas: fix an integer overflow in caca_resize().
Fixes : #52 (CVE-2021-3410)
3 jaren geleden
Sam Hocevar
1022d97496
dither: fix integer multiplication overflow that caused crashes.
Fixes : #38 (CVE-2018-20546)
Fixes : #39 (CVE-2018-20547)
6 jaren geleden
Sam Hocevar
84bd155087
dither: fix integer overflows that were causing a division by zero.
Fixes : #36 (CVE-2018-20544)
6 jaren geleden
Sam Hocevar
f1267fbd3c
Fix copyright headers so that the testsuite passes again.
6 jaren geleden
Yury Gribov
726ede6491
Hide private symbols (issue #33 ).
6 jaren geleden
Sam Hocevar
5f0ec215f8
Remove legacy code from 10 years ago.
6 jaren geleden
Bastian Maerkisch
eebfb1eb65
Bold/italic attribute support for export to svg
7 jaren geleden
Bastian Maerkisch
68b9dcac92
slang driver: enable utf8 auto-detection
The slang internal auto-detection of utf8 is only executed by a call to
SLutf8_enable(-1).
7 jaren geleden
Sam Hocevar
319ab6a989
Only fail the check-copyright test if more than 10 files are affected.
8 jaren geleden
Pascal Terjan
02445fc305
Add some missing breaks (thanks coverity)
8 jaren geleden
alxf
20f3a39e01
Fix header copyright.
8 jaren geleden
alxf
c1ee309d79
Fix a bug into the autorepeat trigger.
- Only affect slang/ncurses.
8 jaren geleden
Sam Hocevar
558812d3fe
Update copyright information.
8 jaren geleden
Sam Hocevar
d33e961dc9
Only declare weak symbols if the runtime doesn’t have them. Fixes #8 .
8 jaren geleden
Sam Hocevar
cdfba0133b
Revert setlocale() effect as soon as possible. Closes #12 .
The Xlib and ncurses libraries query the LC_CTYPE locale value to guess
the usable character set. If the calling program did not call setlocale(),
that character set will be severely limited. Extensive Unicode support
is a reasonable libcaca user expectation.
The locale is restored as soon as possible, once the window or terminal
have been initialised. Unfortunately, the effect of setlocale() is process-
wide, and may affect other threads. This is now documented.
Note also that both Xlib and ncurses ignore the effects of uselocale()
which would have been the thread-safe solution to this problem.
8 jaren geleden
Sam Hocevar
8757e80e43
Try to make Travis-CI tests pass on OS X.
8 jaren geleden
Sam Hocevar
cc4640f1a0
Fix a bug in check-copyright.
8 jaren geleden
Sam Hocevar
9b14aa4d05
Move many build files to the build subdirectory.
8 jaren geleden
Sam Hocevar
2f1ca4a550
Refactor a few things in the makefiles.
This fixes the path to source files in some unit tests and allows
to get rid of a few duplicate lines.
8 jaren geleden
Sam Hocevar
5b50cfa59c
test: refactor a lot of test suite related stuff.
9 jaren geleden
Sam Hocevar
d3c5bce620
misc: fix unit test failures.
9 jaren geleden
Sam Hocevar
55f85166e5
x11: replace deprecated XKeycodeToKeysym() with XLookupKeysym().
9 jaren geleden
artygus
239b223fff
x11 driver: handle errors caused by missing locales
9 jaren geleden
Sam Hocevar
44317430a1
misc: some source code cleanup.
10 jaren geleden
Sam Hocevar
a836967426
attr: fix a very old bug in caca_attr_to_ansi_fg.
11 jaren geleden
Sam Hocevar
2731717bee
codec: add import code for .BIN binary ANSI files.
11 jaren geleden
Sam Hocevar
298edbc8bd
codec: fix \t handling in the text importer.
11 jaren geleden
Alex Foulon
237f946a2e
Fixed character attribute in ncurses driver.
11 jaren geleden
Alex Foulon
34d172f0f2
Fixed typo in driver/x11.c.
11 jaren geleden
Sam Hocevar
f32c24a10d
build: fix the WTFPL homepage and copyright information.
12 jaren geleden
Sam Hocevar
75fd8cd06f
win32: improvements to the Win32 driver by Bastian Märkisch <bmaerkisch@web.de>:
- Save and correctly restore console input mode, ie. do not
change settings of the original console.
- Fix hiding of cursor.
- Free console again if the driver actually created a new one.
- Default canvas size is current window size.
- Base calculation on current font.
- Properly handle press and release events of up to 5 mouse buttons.
- Map right mouse button to button #3 . This is a change in behaviour,
which is desirable for cross-platform codes.
- Generate two click events for double mouse clicks.
- Mouse wheel support, creates button press events. Button numbers
are identical to X11 mappings.
- Handle window buffer resize events.
12 jaren geleden
Sam Hocevar
97c26b9bbb
string: avoid an infinite loop with some invalid UTF-8 sequences, and add a
unit test for the problem. Bug found by Bastian Märkisch <bmaerkisch@web.de>.
12 jaren geleden
Sam Hocevar
26d01d6307
build: fix copyright date in old files.
12 jaren geleden
Sam Hocevar
bef9d0c827
misc: fix a few memory leaks and invalid memory accesses.
12 jaren geleden
Sam Hocevar
8046b1b287
core: fix a mistake in the caca_set_color_ansi() documentation.
12 jaren geleden
Sam Hocevar
28f4d43130
build: fix the OS X and Clang builds.
12 jaren geleden
Sam Hocevar
ab882df7b1
string: fix a potential memory corruption with caca_printf() calls done
outside the canvas.
12 jaren geleden
Sam Hocevar
e8db5f4629
figfont: fix uninitialised data access.
12 jaren geleden
Sam Hocevar
cd61fce90e
build: ship a weak symbol for vsnprintf, too, because our weak symbol for
sprintf_s uses that function and VS2010 does not strip it off even if it
is unused. Also do not use 64-bit integer division in the timer code because
that will create unwanted references to ___moddi3 and ___divdi3.
12 jaren geleden
Sam Hocevar
02bb261647
win32: define a custom sprintf_s() weak symbol. The VS2010 runtime does not
provide the deprecated snprintf(). The mingw32 runtime does not provide the
MS-specific sprintf_s(). Mingw-w64 copes with both. So we switch to sprintf_s
but also provide it as a weak symbol so that mingw32 does not complain.
12 jaren geleden
Sam Hocevar
9e8c0b6a46
build: switch to subdir objects and fix copyright information in string.c.
12 jaren geleden
Sam Hocevar
55af141873
caca: allow to define the CACA_STATIC macro to deactivate dllimport
specifiers; this is required for proper static link.
12 jaren geleden
Sam Hocevar
f56be9bffa
win32: use sprintf_s and vsnprintf_s on Windows, so that our static library
works with the VS2010 runtime, too. Also reduce the stack size requirements
to avoid depending on __chkstk_ms().
12 jaren geleden
Sam Hocevar
b2e484ffe0
build: fix Win32 build and allow to build Win64 binaries from Linux, and
ship the static library and includes too.
12 jaren geleden