Sam Hocevar
a18e28d43e
Update copyright information and changelog
pirms 3 gadiem
Sam Hocevar
b4b4a473cd
Fix off-by-one memory read in binary canvas import ( fixes #56 , #58 )
pirms 3 gadiem
Sam Hocevar
46b4ea7cea
canvas: fix an integer overflow in caca_resize().
Fixes : #52 (CVE-2021-3410)
pirms 3 gadiem
Sam Hocevar
f1267fbd3c
Fix copyright headers so that the testsuite passes again.
pirms 6 gadiem
Sam Hocevar
5f0ec215f8
Remove legacy code from 10 years ago.
pirms 6 gadiem
Sam Hocevar
44317430a1
misc: some source code cleanup.
pirms 10 gadiem
Sam Hocevar
2731717bee
codec: add import code for .BIN binary ANSI files.
pirms 11 gadiem
Sam Hocevar
f32c24a10d
build: fix the WTFPL homepage and copyright information.
pirms 12 gadiem
Sam Hocevar
a09f027727
Add the copyright unit test and update copyright information everywhere.
pirms 15 gadiem
Sam Hocevar
107ff4b815
Large source code cleanup, getting rid of spaces, tabs, and svn keywords.
pirms 15 gadiem
Sam Hocevar
308c203f4a
Fix Win32 cross-build by removing one level of aliasing.
pirms 15 gadiem
Sam Hocevar
d3ef2bbecd
Add caca_export_area_to_memory() to export only a selected part of the
current canvas. This is useful to export dirty rectangles. Accordingly,
add caca_import_area_from_memory() and caca_import_area_from_file().
pirms 15 gadiem
Sam Hocevar
11428406c1
Split import.c and export.c to create a new text.c codec file in order
to keep source files under 1,000 lines of code.
pirms 15 gadiem
Pascal Terjan
d1db2df568
Revert r3478
pirms 15 gadiem
Pascal Terjan
33f2264bcd
Import/export dirty rectangles
pirms 15 gadiem
Sam Hocevar
fc193a4b99
Fix a few implicit cast related warnings on VC++.
pirms 15 gadiem
Sam Hocevar
af3c74e915
import.c: when importing ANSI or UTF-8 files, treat ^L as a canvas
frame separator. Not extremely robust yet.
pirms 15 gadiem
Sam Hocevar
7b25d39e63
Apparently \033 is more common than \x1b for ESC. Use the former in our
code for clarity.
pirms 15 gadiem
Sam Hocevar
e1562a8d46
libcaca: move codecs and import/export functions into subdirectories.
pirms 16 gadiem
Sam Hocevar
319cc69db3
Continue the libcaca/libcucul merge. Source and binary compatibility
are almost there.
pirms 16 gadiem
Sam Hocevar
f61816ceb7
Starting refactoring to get rid of libcucul. The initial reason for the
split is rendered moot by the plugin system: when enabled, binaries do
not link directly with libX11 or libGL. I hope this is a step towards
more consisteny and clarity.
pirms 16 gadiem
Sam Hocevar
f5597bce42
* Make cucul_import_file() use cucul_file_t functions.
pirms 16 gadiem
Sam Hocevar
8f832a3b47
* Switch a few unsigned int variables to size_t where appropriate.
* Synchronise parameter types in the C++ bindings with the C API.
pirms 16 gadiem
Sam Hocevar
ec68a634cf
* Get rid of the last long types in the API.
* Use size_t and ssize_t where appropriate.
pirms 16 gadiem
Sam Hocevar
99b5396e8e
* Remove #include <stdint.h> etc. from "common.h". Instead, make sure that
<cucul.h> will provide the C99 types, even if libcaca has been installed.
* Rename what's left of "common.h" to "stubs.h".
* Remove all references to erroneous <inttypes.h> from source files.
pirms 16 gadiem
Sam Hocevar
ee60c3086e
* Handle multiframe canvases in the caca importer, courtesy of Ben Wiley
Sittler. Untested.
pirms 17 gadiem
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
pirms 18 gadiem
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
pirms 18 gadiem
Sam Hocevar
77bed4f704
* Got rid of that ugly cv->import member.
pirms 18 gadiem
Sam Hocevar
4f4f887080
* Improved vt220 import by adding a persistent context to canvases.
pirms 18 gadiem
Sam Hocevar
1756bdf30d
* Improved ANSI importer so that it supports a lot more of what is needed
for basic vt220 emulation.
pirms 18 gadiem
Sam Hocevar
6372da2ffc
* Improved ANSI import, especially wrt. drawing context persistence.
pirms 18 gadiem
Sam Hocevar
16e95eb980
* When importing an utf-8 file, set background and foreground colours to
the nearest ANSI values for the current attribute. When importing an ANSI
file, force them to lightgray on black.
pirms 18 gadiem
Sam Hocevar
51936f585c
* Got rid of HAVE_ERRNO_H ifdefs by defining seterrno()/geterrno() functions.
* More debugging information in the import/export and font functions.
pirms 18 gadiem
Sam Hocevar
e656963a9a
* Fixed a bug in the caca importer.
pirms 18 gadiem
Sam Hocevar
3243101ff0
* Rename cucul_put*() into cucul_put_*(). Updated all code to reflect that.
pirms 18 gadiem
Sam Hocevar
9d6bd7b322
* Do not force the text colour when importing a text file.
pirms 18 gadiem
Sam Hocevar
f61bed2bdb
* Add cursor and handle support to canvases. Unused yet.
pirms 18 gadiem
Sam Hocevar
0a94f93f95
* If not enough data is available for import, return 0 instead of an error.
pirms 18 gadiem
Sam Hocevar
44c286272c
* Minor documentation fixes.
pirms 18 gadiem
Sam Hocevar
1cb8d02560
* Set the cucul_import_memory() buffer type to void const * instead of
unsigned char const * so that C++ programs won't complain.
___ __ __ ____ ___ ___ ___
/ _ \| \/ |/ ___| / _ \ / _ \ / _ \
| | | | |\/| | | _ | (_) | (_) | (_) |
| |_| | | | | |_| | \__, |\__, |\__, |
\___/|_| |_|\____| /_/ /_/ /_/
pirms 18 gadiem
Sam Hocevar
e3b2d76bd6
* Renamed cucul_import() to cucul_import_memory() and implemented
cucul_import_file().
pirms 18 gadiem
Sam Hocevar
3d376d8cad
* Don't use htonl() directly, use common.h's hton32() wrapper.
pirms 18 gadiem
Sam Hocevar
17f272c4c4
* Deprecate buffer management. We're back to standard void* memory areas.
pirms 18 gadiem
Sam Hocevar
98ee92b2d0
* Updated the caca export format so that it supports multiple frames.
* Updated the caca importer to reflect that; only one frame is read at the
moment.
* Added an "utf8cr" export format for UTF-8 + CRLF exports.
* Updated cacaserver to reflect file format changes.
pirms 18 gadiem
Sam Hocevar
42c9518d2a
* Got rid of cucul_ansi_to_attr() and cucul_argb_to_attr() and restored
cucul_set_color() and cucul_set_truecolor() under the new names
cucul_set_color_ansi() and cucul_set_color_argb().
* Renamed cucul_get_color_name() into cucul_ansi_to_str().
pirms 18 gadiem
Sam Hocevar
0b37a307dd
* Get rid of cucul_set_attr_ansi() and cucul_set_attr_argb and merge the
functionality into cucul_set_attr().
* Add cucul_ansi_to_attr() and cucul_argb_to_attr().
* Rename CUCUL_COLOR_* to CUCUL_*.
pirms 18 gadiem
Sam Hocevar
aa93ad25f6
* Remove cucul_set_color() from the exported API and replaced all calls
with cucul_set_attr_ansi(). Old application will still compile (but issue
a warning) and run, though.
pirms 18 gadiem
Sam Hocevar
86301dd48c
* Use the LSB of alpha and blue components to encode additional flags such
as bold or underline. No higher level support for these yet, but at
least everything is consistent.
* Created cucul_set_attr_ansi() and cucul_set_attr_argb() which are bound
to replace cucul_set_color() and cucul_set_truecolor().
pirms 18 gadiem
Sam Hocevar
bcbc2ee215
* Fix a buffer overflow in the utf-8 cucul_import().
pirms 18 gadiem