aboutsummaryrefslogtreecommitdiffstats
path: root/src/image.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make the SVG error message less verboseLars Ingebrigtsen2022-04-131-1/+1
| | | | | | * src/image.c (svg_load_image): Don't include the spec in the error message, because this is commonly the entire SVG string, and this will fill up the *Messages* buffer quickly.
* Improve DISPOSE_PREVIOUS in gif_load slightlyLars Ingebrigtsen2022-04-121-0/+8
| | | | | * src/image.c (gif_load): Tweak how DISPOSE_PREVIOUS is handled. It's still not right, but it's less glaringly wrong.
* Fix webp_load data lifetime issuesLars Ingebrigtsen2022-04-121-2/+14
| | | | | * src/image.c (webp_load): Take care of lifetime issues of the image data we're iterating over for animated images.
* Fix check for whether frames fit into gif imagesLars Ingebrigtsen2022-04-121-4/+7
| | | | * src/image.c (gif_load): Really check all frames that they fit.
* Store less data in the gif animation cacheLars Ingebrigtsen2022-04-121-6/+4
| | | | | * src/image.c (gif_load): Only start a cache if we're have an :index entry (which means that we're trying to animate something).
* Release resources in gif_load on errorsLars Ingebrigtsen2022-04-121-7/+10
| | | | | * src/image.c (webp_load): Clean up code slightly. (gif_load): Really release resources on GIF parsing errors.
* Animate GIF images that don't have an explicit delay settingLars Ingebrigtsen2022-04-121-5/+5
| | | | | * src/image.c (gif_load): Use the default delay for GIF images that don't explicitly state a delay.
* Fix thinko in the anim cacheLars Ingebrigtsen2022-04-121-8/+7
| | | | | | * src/image.c (gif_load): Fix resetting the cache when we're out of sync. (anim_create_cache): Start from zero, not 1.
* Make normal image caching actually work when doing animated imagesLars Ingebrigtsen2022-04-111-2/+44
| | | | | | | * src/image.c (filter_image_spec): New function. (uncache_image): Use it. (lookup_image): Ditto. (syms_of_image): Define some keywords.
* ; * src/image.c: move #endif to correct placeMattias EngdegÄrd2022-04-111-4/+2
|
* Make gif_load work across architectures againLars Ingebrigtsen2022-04-111-23/+39
| | | | | | | * src/image.c (gif_load): Invert the way animated pixmaps are created: Work on the cached computed-so-far pixmap, and then copy the entire thing to the ximg with PUT_PIXEL at the end. This should work across platforms, which the previous version didn't.
* Revert "; * src/image.c (gif_load): Fix compilation error on MS-Windows."Lars Ingebrigtsen2022-04-111-4/+0
| | | | | | This reverts commit a715f2fbe70bb4cbb961e82af95e2965030b4513. This is fixed in a different way in a subsequent commit.
* ; * src/image.c (gif_load): Fix compilation error on MS-Windows.Eli Zaretskii2022-04-111-0/+4
|
* Fix anim_cache garbage collectionLars Ingebrigtsen2022-04-111-85/+89
| | | | | * src/image.c (struct anim_cache): Move earlier. (mark_image_cache): Mark the Lisp_Object in the anim cache.
* Fix compilation errors when HAVE_GIF and not HAVE_WEBPLars Ingebrigtsen2022-04-111-1/+1
| | | | * src/image.c: Enable the cache functions when HAVE_GIF, too
* Speed up GIF animationsLars Ingebrigtsen2022-04-111-111/+179
| | | | | | | | | | * src/image.c (anim_prune_animation_cache): Tweak the destructor API. (gif_destroy): New function. (gif_load): Use a cache to avoid quadratic CPU usage for animated images (bug#45224). (webp_destroy): New function. (webp_load): Use it.
* Refactor the webp cache code to allow usage by gif_load, tooLars Ingebrigtsen2022-04-111-83/+97
| | | | | | | | * src/image.c (struct anim_cache, anim_create_cache) (anim_prune_animation_cache, anim_get_animation_cache): Rename from webp_cache (etc) to prepare for usage in the gif animation implementation, too. (webp_load): Adjust cache usage.
* Improve gif_load error messagesLars Ingebrigtsen2022-04-111-3/+14
| | | | * src/image.c (gif_load): Improve error reporting (bug#54848).
* Fix WebP image support on MS-WindowsEli Zaretskii2022-04-101-26/+35
| | | | | | | | | | | | | | | * src/image.c (init_webp_functions) [WINDOWSNT]: Load Demux functions from the WebPDemux DLL. Load internal functions where the public APIs are inline functions defined in the WebP headers. (WebPAnimDecoderOptionsInit) [WINDOWSNT]: Define to call 'WebPAnimDecoderOptionsInitInternal'. (WebPDemux): Define to call 'WebPDemuxInternal'. (WebPAnimDecoderNew): Define to call 'WebPAnimDecoderNewInternal'. (syms_of_image) <webpdemux>: New symbol. * lisp/term/w32-win.el (dynamic-library-alist): Add a member for 'webpdemux'.
* Add support for animated webp imagesLars Ingebrigtsen2022-04-101-13/+205
| | | | | | | | | | | | | | * configure.ac (HAVE_RSVG): Also include the webpdemux library. It was new in version 0.4.4, and we require 0.6.0, so it should be safe. * src/image.c: Include demux.h. (enum webp_keyword_index, webp_format): Include :index for animations. (init_webp_functions): Add Windows LOAD_DLLs. (struct webp_cache, webp_create_cache) (webp_prune_animation_cache, webp_get_animation_cache): New functions. (webp_load): Support animated webp images (bug#54242).
* ; * src/image.c (syms_of_image): Fix whitespace.Eli Zaretskii2022-03-261-4/+4
|
* Enable the native display of BMP images on HaikuPo Lu2022-03-261-4/+8
| | | | | * src/image.c (syms_of_image): Also register `bmp' image type on Haiku when native image APIs are enabled.
* Support display of BMP images on MS-WindowsEli Zaretskii2022-03-261-0/+2
| | | | | | | | | | | | * src/w32image.c (w32_can_use_native_image_api): Support BMP images. * src/image.c (syms_of_image) <Qbmp>: New symbol. [HAVE_NTGUI]: Add 'bmp' to list of supported image types. * doc/lispref/display.texi (Image Formats): Document built-in support for BMP images. * etc/NEWS: Announce the change.
* Fix more uses of opaque Visual structurePo Lu2022-03-081-1/+1
| | | | | | | | | | | | * src/image.c (x_kill_gs_process): * src/xfaces.c (x_free_colors): (x_free_dpy_colors): * src/xfns.c (Fxw_display_color_p): (Fx_display_grayscale_p): (Fx_display_visual_class): * src/xterm.c (x_copy_color): * src/xterm.h (x_mutable_colormap): Stop using private fields of Visual.
* Fix mis-parsing of certain malformed XBM filesPo Lu2022-02-181-2/+2
| | | | | * src/image.c (xbm_scan): Return error on a character literal that doesn't start with "\x".
* Parse XBM images which use character escapes for hex literalsPo Lu2022-02-181-0/+42
| | | | | * src/image.c (xbm_scan): Implement parsing of hex escapes in character literals.
* Fix crash when displaying XBM images on a 32-bit visualPo Lu2022-02-171-1/+1
| | | | | * src/image.c (Create_Pixmap_From_Bitmap_Data): Fix use of wrong (default) depth.
* Implement XBM images on HaikuPo Lu2022-02-171-0/+20
| | | | | | * src/image.c (image_create_bitmap_from_data): Handle allocation failures on Haiku. (Create_Pixmap_From_Bitmap_Data): Implement for Haiku.
* Replace ptrdiff_t with new specpdl_ref type for specpdl referencesMattias EngdegÄrd2022-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The specpdl_ref type is just an alias for ptrdiff_t; the compiled code remains the same. All operations on specpdl_ref (arithmetic, comparison etc) now go through inline functions. The bulk of the change is almost completely mechanical. It is done to prepare for a type-safe representation and subsequent performance improvement. * src/lisp.h (specpdl_ref, specpdl_count_to_ref, specpdl_ref_to_count) (specpdl_ref_eq, specpdl_ref_lt, specpdl_ref_valid_p) (make_invalid_specpdl_ref, specpdl_ref_add, specpdl_ref_to_ptr): New. (SPECPDL_INDEX, struct handler, USE_SAFE_ALLOCA, safe_free) (safe_free_unbind_to): * src/alloc.c (run_finalizer_function, inhibit_garbage_collection) (garbage_collect, Fgarbage_collect, which_symbols): * src/bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start): * src/buffer.c (Fkill_buffer, Fset_buffer_major_mode, Fmove_overlay) (Fdelete_overlay): * src/bytecode.c (exec_byte_code): * src/callint.c (Ffuncall_interactively, Fcall_interactively): * src/callproc.c (Fcall_process, call_process, create_temp_file) (Fcall_process_region): * src/charset.c (load_charset_map_from_file): * src/coding.c (decode_coding_gap, decode_coding_object) (encode_coding_object, Fread_coding_system): * src/comp.c (emit_static_object, helper_unbind_n, load_comp_unit): * src/composite.c (update_compositions, autocmp_chars): * src/cygw32.c (conv_filename_to_w32_unicode) (conv_filename_from_w32_unicode): * src/data.c (notify_variable_watchers): * src/decompress.c (Fzlib_decompress_region): * src/dired.c (directory_files_internal, file_name_completion) (file_attributes): * src/dispnew.c (Fredisplay): * src/doc.c (get_doc_string, Fsnarf_documentation): * src/editfns.c (Fsave_excursion, Fsave_current_buffer) (Freplace_buffer_contents, Fsubst_char_in_region, Fsave_restriction) (styled_format): * src/emacs-module.c (Fmodule_load, funcall_module): * src/emacs.c (init_cmdargs, Fdump_emacs): * src/eval.c (call_debugger, do_debug_on_call, FletX, Flet) (Ffuncall_with_delayed_message, Funwind_protect) (internal_lisp_condition_case, signal_or_quit) (load_with_autoload_queue, Feval, grow_specpdl_allocation) (record_in_backtrace, eval_sub, Ffuncall, apply_lambda) (funcall_lambda, clear_unwind_protect, set_unwind_protect) (set_unwind_protect_ptr, unbind_to, Fbacktrace_eval): * src/fileio.c (Fmake_temp_file_internal, Fcopy_file, Frename_file) (Finsert_file_contents, write_region, Fdo_auto_save): * src/fns.c (Fyes_or_no_p, Frequire, hash_table_user_defined_call): * src/fringe.c (update_window_fringes): * src/gtkutil.c (xg_dialog_run): * src/haiku_io.c (c_specpdl_idx_from_cxx): * src/haiku_support.cc (be_popup_file_dialog): * src/haiku_support.h (c_specpdl_idx_from_cxx): * src/haikufns.c (haiku_create_frame, haiku_create_tip_frame) (haiku_hide_tip, Fx_show_tip, Fhaiku_read_file_name): * src/haikumenu.c (haiku_popup_dialog, set_frame_menubar): * src/image.c (slurp_file): * src/indent.c (line_number_display_width, Fvertical_motion): * src/insdel.c (signal_before_change, signal_after_change) (Fcombine_after_change_execute): * src/intervals.c (get_local_map): * src/json.c (lisp_to_json_nonscalar_1, Fjson_serialize, Fjson_insert) (Fjson_parse_string, Fjson_parse_buffer): * src/keyboard.c (recursive_edit_1, Frecursive_edit, cmd_error) (Finternal_track_mouse, command_loop_1, read_menu_command) (safe_run_hooks, read_event_from_main_queue, read_char, timer_check_2) (menu_item_eval_property, read_key_sequence, read_key_sequence_vs) (Fsuspend_emacs): * src/keymap.c (Fcurrent_active_maps, Fdescribe_vector) (Fhelp__describe_vector): * src/lread.c (Fload, save_match_data_load, readevalloop) (Feval_buffer, Feval_region, grow_read_buffer, read_integer, read1): * src/macros.c (Fexecute_kbd_macro): * src/menu.c (x_popup_menu_1): * src/minibuf.c (read_minibuf, set_minibuffer_mode) (read_minibuf_unwind, Fread_string, Fread_buffer): * src/nsfns.m (Fx_create_frame, Fx_show_tip): * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog): * src/pdumper.c (Fdump_emacs_portable): * src/pgtkfns.c (Fx_create_frame, x_create_tip_frame, x_hide_tip) (Fx_show_tip, Fpgtk_print_frames_dialog, Fx_file_dialog, Fx_select_font): * src/pgtkmenu.c (set_frame_menubar, create_and_show_popup_menu) (pgtk_menu_show, create_and_show_dialog, pgtk_dialog_show) (pgtk_popup_dialog): * src/pgtkterm.c (pgtk_cr_export_frames): * src/print.c (PRINTPREPARE, temp_output_buffer_setup) (Fprin1_to_string, print_vectorlike): * src/process.c (Fmake_process, create_process, Fmake_pipe_process) (Fmake_serial_process, connect_network_socket, Fmake_network_process) (network_interface_info, server_accept_connection) (wait_reading_process_output, read_process_output, exec_sentinel): * src/regex-emacs.c (re_match_2_internal): * src/search.c (looking_at_1, fast_looking_at, search_buffer_re): * src/sound.c (Fplay_sound_internal): * src/sysdep.c (system_process_attributes): * src/term.c (tty_menu_show): * src/textprop.c (Fnext_single_char_property_change) (Fprevious_single_char_property_change, add_text_properties_1) (set_text_properties, set_text_properties_1, Fremove_text_properties) (Fremove_list_of_text_properties): * src/thread.c (Fmutex_lock, invoke_thread_function): * src/undo.c (truncate_undo_list): * src/w32fns.c (Fx_create_frame, w32_create_tip_frame, w32_hide_tip) (Fx_show_tip, Fx_file_dialog): * src/w32font.c (Fx_select_font): * src/w32menu.c (set_frame_menubar): * src/window.c (window_list, next_window, window_list_1) (run_window_configuration_change_hook, Frun_window_scroll_functions) (run_window_change_functions, set_window_buffer) (temp_output_buffer_show, window_scroll, scroll_command) (Fscroll_other_window, Fscroll_other_window_down): * src/xdisp.c (safe__call, handle_fontified_prop, handle_face_prop) (handle_single_display_spec, Fbuffer_text_pixel_size) (message_dolog, with_echo_area_buffer, setup_echo_area_for_printing) (display_echo_area, set_message, clear_message, echo_area_display) (gui_consider_frame_title, prepare_menu_bars, update_menu_bar) (update_tab_bar, update_tool_bar, redisplay_internal) (redisplay_preserve_echo_area, run_window_scroll_functions) (redisplay_window, extend_face_to_end_of_line) (display_count_lines_logically, display_count_lines_visually) (display_mode_lines, display_mode_line, Fformat_mode_line) (decode_mode_spec): * src/xfns.c (Fx_create_frame, x_create_tip_frame, x_hide_tip) (Fx_show_tip, Fx_file_dialog, Fx_select_font, Fx_print_frames_dialog): * src/xmenu.c (set_frame_menubar, create_and_show_popup_menu) (x_menu_show, create_and_show_dialog, x_dialog_show) (xw_popup_dialog): * src/xselect.c (x_get_local_selection, x_reply_selection_request) (x_handle_selection_request, wait_for_property_change): * src/xterm.c (x_cr_export_frames, x_connection_closed): Replace ptrdiff_t with specpdl_ref for referencing specpdl and use the corresponding functions instead of direct arithmetic.
* Improve image depth handlingPo Lu2022-02-041-5/+6
| | | | | | | | | | | | | | | Emacs defaults to a 32-bit TrueColor visual, but if that happens on a display which defaults to 16-bit TrueColor, yet happens to have 32-bit color, and doesn't have the X Render Extension, an error will occur in x_composite_image as libXpm will load pixmaps of depth 16 instead of depth 32. * src/image.c (x_create_x_image_and_pixmap): Explictly specify display depth. (x_create_xrender_picture): (xpm_load): (gs_load): Use dpyinfo->n_planes instead of DefaultDepthOfScreen.
* * src/image.c (parse_image_spec): Use NILP.Stefan Kangas2022-01-261-1/+1
|
* Add some code for transparent frame backgrounds without CairoPo Lu2022-01-241-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/image.c (svg_load_image): Fix build without native image transforms. * src/xfns.c (set_up_x_back_buffer): (tear_down_x_back_buffer): Free XR picture if present. * src/xftfont.c (xftfont_get_xft_draw): Fix formatting issue. * src/xterm.c (x_xr_ensure_picture): New function. (FRAME_CR_CONTEXT, FRAME_CR_CONTEXT): (FRAME_CR_SURFACE_DESIRED_WIDTH) (FRAME_CR_SURFACE_DESIRED_HEIGHT): Move to separate USE_CAIRO block so the ext data code can be used on builds with XRender as well. (x_xr_apply_ext_clip): (x_xr_reset_ext_clip): New functions. (x_set_clip_rectangles): (x_reset_clip_rectangles): Set ext data on XRender as well. (x_term_init): Look for a picture format appropriate for our purposes. (x_clear_area): Use XRenderFillRectangle to draw backgrounds if available. (x_xrender_color_from_gc_foreground): (x_xrender_color_from_gc_background): New functions. * src/xterm.h (FRAME_X_PICTURE): (FRAME_X_PICTURE_FORMAT) (FRAME_CHECK_XR_VERSION): New macros. (struct x_gc_ext_data): Define on XRender as well. (struct x_display_info): Define ext_codes when using XRender and add new field `pict_format'. (struct x_output): New field `picture'.
* Clean up some of the X extension related codePo Lu2022-01-231-2/+0
| | | | | | | | | * src/image.c (Fimage_transforms_p): Remove unused variables. * src/xterm.c (x_probe_xfixes_extension): (x_term_init): Probe for xfixes during terminal initialization instead. * src/xterm.h (struct x_display_info): New fields for xfixes support.
* Get rid of calls to XRenderQueryExtension after terminal initializationPo Lu2022-01-201-4/+2
| | | | | | | | | | | * src/image.c (x_create_xrender_picture): (Fimage_transforms_p): Use `xrender_supported_p'. * src/xterm.c (x_term_init): Query for XRender support and extension versions. * src/xterm.h (struct x_display_info): New fields `xrender_supported_p', `xrender_major' and `xrender_minor'.
* ; * src/image.c (syms_of_image): Fix typo in last change.Po Lu2022-01-091-1/+1
|
* * src/image.c (syms_of_image): Declare support for webp on Haiku.Po Lu2022-01-091-1/+2
|
* Fix GNUstep compilation warningsPo Lu2022-01-061-0/+2
| | | | | | | | | | | | * src/Makefile.in (NON_OBJC_CFLAGS): Add `-Wnested-externs'. * src/emacs.c (load_pdump): Only define exec_bufsize if !NS_SELF_CONTAINED. * src/image.c (ARGB_TO_ULONG): Don't define if HAVE_NS. * src/nsterm.m (ns_destroy_window): Pacify incorrect GCC warning. (ns_query_color): Make static. (ns_run_loop_break): Fix old-style definition. ([EmacsView toggleFullScreen:]): Remove unused variable.
* Merge from origin/emacs-28Eli Zaretskii2022-01-011-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 836be7a112 ; * etc/refcards/ru-refcard.tex: Update Copyright year. 86cbc6ee4a * lisp/net/tramp-sh.el: Adapt copyright year ebe8772f65 ; Minor fixes related to copyright years 23c1ee6989 ; * test/manual/etags/ETAGS.good_N: Adjust to copyright ye... 8d3fc7ec89 * src/xfaces.c (face_for_font): Make 'hash' be uintptr_t. 19dcb237b5 ; Add 2022 to copyright years. # Conflicts: # etc/NEWS # etc/refcards/ru-refcard.tex # lib/cdefs.h # lisp/erc/erc-dcc.el # lisp/erc/erc-imenu.el # lisp/erc/erc-replace.el # lisp/image-dired.el # lisp/progmodes/xref.el # m4/alloca.m4 # m4/byteswap.m4 # m4/errno_h.m4 # m4/getopt.m4 # m4/gnulib-common.m4 # m4/inttypes.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/sys_socket_h.m4
| * ; Add 2022 to copyright years.Eli Zaretskii2022-01-011-1/+1
| |
* | Add native HEIC support on macOS (bug#51381)Alan Third2021-12-221-0/+5
| | | | | | | | | | | | | | | | | | * lisp/image.el (image-type-header-regexps): (image-type-file-name-regexps): (image-type-auto-detectable): Add auto-detect code for heic. * src/image.c (syms_of_image): Add heic as an image type under NS. * src/nsimage.m (ns_can_use_native_image_api): Add heic to list of possible image types in the native image support lookup.
* | Further cleanup of NS color codeAlan Third2021-12-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/dispextern.h (FACE_COLOR_TO_PIXEL): Remove define and fix all callers. * src/nsterm.h (struct nsfont_info): Remove color_table. * src/nsterm.m ([NSColor colorWithUnsignedLong:]): Always assume the input contains the correct alpha value. (ns_lookup_indexed_color): (ns_index_color): (ns_color_index_to_rgba): Remove functions and fix all callers. (ns_query_color): No longer set pixel to the lookup table index, always just set it to the ARGB integer value. (ns_defined_color): Ignore makeindex as we no longer set pixel to the lookup table index. (ns_initialize_display_info): (ns_redisplay_interface): Remove lookup table. (ns_term_init): Fix the alpha setting. thing
* | Simplify NS color handlingAlan Third2021-12-221-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/image.c (RGB_TO_ULONG): (ARGB_TO_ULONG): (RED_FROM_ULONG): (RED16_FROM_ULONG): (GREEN16_FROM_ULONG): (BLUE16_FROM_ULONG): Define these here for NS too. * src/nsfns.m (ns_set_foreground_color): (ns_set_background_color): Use new EmacsColor methods. * src/nsterm.h (struct ns_color_table): Replace this struct with a built-in Objective C type. (RGB_TO_ULONG): (ARGB_TO_ULONG): (ALPHA_FROM_ULONG): (RED_FROM_ULONG): (GREEN_FROM_ULONG): (BLUE_FROM_ULONG): (RED16_FROM_ULONG): (GREEN16_FROM_ULONG): (BLUE16_FROM_ULONG): These are no longer needed in the NS specific code. (struct ns_display_info): Use an NSMutableArray instead of a custom struct. * src/nsterm.m ([NSColor colorWithUnsignedLong:hasAlpha:]): ([NSColor unsignedLong]): New methods. (ns_lookup_indexed_color): (ns_index_color): Use the NSMutableArray lookup table. (ns_term_init): (ns_color_index_to_rgba): (ns_query_color): Use the new EmacsColor methods. (ns_initialize_display_info): (ns_delete_display): Initialize and release the NSMutableArray lookup table.
* | Clean up some of PGTK codeEli Zaretskii2021-12-181-7/+5
| | | | | | | | | | | | | | | | * src/pgtkgui.h: Fix comments. * src/image.c (DONT_CREATE_TRANSFORMED_IMAGEMAGICK_IMAGE) (is_wayland_display, check_x_display_info) (pgtk_get_string_resource): Reformat comments. * src/gtkutil.c (xg_show_tooltip): Add comments to large #ifdef's.
* | Merge remote-tracking branch 'origin/master' into feature/pgtkPo Lu2021-12-081-1/+7
|\ \
| * | Pacify svg_load_image compiler warningLars Ingebrigtsen2021-12-081-1/+1
| | | | | | | | | | | | | | | * src/image.c (svg_load_image): Fix compiler warning from gcc (Debian 11.2.0-10).
| * | Check decoding results in webp_load before using itLars Ingebrigtsen2021-12-081-0/+6
| | | | | | | | | | | | | | | * src/image.c (webp_load): Check whether we were able to decode the image before using it.
* | | Merge remote-tracking branch 'origin/master' into feature/pgtkPo Lu2021-12-071-18/+0
|\ \ \ | |/ /
| * | image.c: Remove some dead codeStefan Kangas2021-12-061-18/+0
| | | | | | | | | | | | | | | * src/image.c (gui_put_x_image): Remove dead code, commented out since 2004.
* | | Merge remote-tracking branch 'origin/master' into feature/pgtkPo Lu2021-12-061-3/+3
|\ \ \ | |/ /
| * | ; * src/image.c (webp_load): Minor stylistic fix-up to previous changeLars Ingebrigtsen2021-12-051-2/+2
| | | | | | | | | | | | * src/image.c (webp_load): Minor stylistic fix-up to previous change.