summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* GitHub CI: Add static analysis with CodeQLtlsa/add-ciMichael Drake2022-11-101-0/+61
|
* GitHub CI: Add build and unit test workflowMichael Drake2022-11-101-0/+76
|
* GIF: Squash multiplication result converted to larger typeMichael Drake2022-11-101-7/+16
|
* GIF: Return EOD if we hit the end during scanMichael Drake2022-11-051-1/+1
|
* Docs: README: Update to mention nsgif_data_completeMichael Drake2022-11-041-0/+18
|
* Tests: Decoder: Mark the gif data complete after scanning inputMichael Drake2022-11-041-0/+2
|
* Tests: Decoder: Improve warning loggingMichael Drake2022-11-041-2/+1
|
* API: Add call to indicate input data is completeMichael Drake2022-11-042-19/+107
| | | | | | By distinguising between waiting for more data and a broken truncated file, we can decode what we can of any final truncated frame.
* GIF: Constify gif structure through next frame gettersMichael Drake2022-11-041-2/+2
|
* Test: Ensure we can still loop GIFs with a loop count limit.Michael Drake2022-05-081-0/+3
|
* Test: Only generate output on first loop.Michael Drake2022-05-081-8/+8
| | | | | The multiple loops feature is for decode performance testing and it makes no sense to generate output more than once.
* API: Replace colour_table with {global|local}_palette.Michael Drake2022-05-083-12/+11
| | | | Avoiding use of "colour" because of different spelling in US.
* GIF: Rename frame_pointer to frame_offset.Michael Drake2022-05-081-3/+3
|
* Test: Allow local palettes to be saved as an image.Michael Drake2022-05-081-0/+19
|
* Test: Allow the global palette to be saved as an image.Michael Drake2022-05-081-0/+70
|
* API: Add function to get a frame's local palette.Michael Drake2022-05-082-0/+45
|
* GIF: Store frame palette offset.Michael Drake2022-05-081-0/+7
|
* GIF: Restructure local palette decode.Michael Drake2022-05-081-34/+58
|
* API: Add function to get global colour table.Michael Drake2022-05-072-3/+34
|
* Test: Add local/global colour table to info output.Michael Drake2022-05-071-0/+3
|
* API: Store presence of global/local colour table in GIF/frame info.Michael Drake2022-05-072-6/+13
|
* API: Add optional bitmap rowspan callback.Michael Drake2022-05-012-3/+28
|
* GIF: Ensure frame clipping is applied to max lzw output length.Michael Drake2022-04-151-1/+2
|
* GIF: Try to recover after LZW_EOI_CODE.DarthSim2022-04-151-2/+3
|
* Tests: Decoder: Print frame number of frames that fail to decode.Michael Drake2022-04-121-1/+3
|
* Tests: Decoder: Print frame number in frame info.Michael Drake2022-04-121-3/+4
|
* API: Add function to control handling of small frame delays.Michael Drake2022-04-042-0/+41
| | | | | | | | By default we match the mainstream behaviour, and this new call allows that to be overriden by the client. Note this only affects animations that are managed by LibNSGIF via nsgif_frame_prepare().
* GIF: Clarify minimum frame delay handling.Michael Drake2022-04-041-2/+15
|
* API: Don't expose loop_count.Michael Drake2022-04-042-6/+7
| | | | | It is internal state for a libnsgif managed animation, not information about the GIF.
* GIF: Remove unused helper function.Michael Drake2022-03-241-12/+0
|
* Test: Update gif decoder to new API.Michael Drake2022-03-241-3/+5
|
* API: Use uint32_t for background colour info member.Michael Drake2022-03-242-22/+4
| | | | | This avoids increasing alignment of pointer type where we handle the background fill.
* Util: Improve host endian detection for older GCCs.Michael Drake2022-03-241-2/+2
| | | | Co-authored-by: John-Mark Bell <jmb@netsurf-browser.org>
* Tests: Update decoder to set required pixel format.Michael Drake2022-03-231-1/+1
|
* Docs: Mention colour formats in README.Michael Drake2022-03-231-4/+7
|
* GIF: Build colour tables using colours with client channel ordering.Michael Drake2022-03-231-18/+28
|
* API: GIF: Take client colour layout on nsgif_create().Michael Drake2022-03-232-3/+99
| | | | Map the requested layout to appropriate pixel channel offsets.
* API: Add enum for colour component order selection.Michael Drake2022-03-231-3/+58
| | | | | This will allow the client to choose the colour component order for decoded bitmaps.
* GIF: Support AnimExts Looping Application Extension.Michael Drake2022-03-081-6/+45
| | | | The the NETSCAPE2.0 and ANIMEXTS1.0 extensions are identical.
* GIF: Fix handling of loop count value in application extension.Michael Drake2022-03-081-0/+3
|
* API: Docs: Document meaning of zero for loop_max gif info member.Michael Drake2022-03-081-1/+1
|
* Docs: Update README to mention nsgif_data_scan errors.Michael Drake2022-03-071-4/+9
|
* Test: Make decoder more tolerant of bad gifs.Michael Drake2022-03-031-12/+11
| | | | | This makes us keep going if the scan or a frame decode fails, ensuring everything is tested.
* API: Document nsgif_data_scan return code errors being non-fatal.Michael Drake2022-03-031-0/+3
|
* API: Single error code for end of data.Michael Drake2022-03-032-8/+2
|
* GIF: Fix frame background colour disposal for frame clipping.Michael Drake2022-03-031-4/+6
|
* GIF: Fix frame limit off-by-one.Michael Drake2022-03-031-2/+2
|
* GIF: Apply minimum frame delay only in nsgif_frame_prepare().Michael Drake2022-03-021-7/+6
| | | | | Now the frame info contains the raw delay from the GIF file, without the minimum applied.
* Test: Add transparency to frame info dump.Michael Drake2022-03-021-0/+1
|
* Test: Default to single loop if loop count is zero.Michael Drake2022-03-021-0/+4
|