• Chong Yidong's avatar
    Refactor image-type loading. · bb4d86b4
    Chong Yidong authored
    * src/dispextern.h (struct image_type): Add new slot, storing a type
    initialization function.
    
    * src/image.c (define_image_type): Call the image initializer function
    if it is defined.  Arguments and return value changed.
    (valid_image_p, make_image): Callers changed.
    (xbm_type, xpm_type, pbm_type, png_type, jpeg_type, tiff_type)
    (gif_type, imagemagick_type, svg_type, gs_type): Add
    initialization functions.
    (Finit_image_library): Call lookup_image_type.
    (CHECK_LIB_AVAILABLE): Macro deleted.
    (lookup_image_type): Call define_image_type here, rather than via
    Finit_image_library, and without using CHECK_LIB_AVAILABLE.
    (syms_of_image): Move define_image_type calls for xbm_type and
    pbm_type to lookup_image_type.
    bb4d86b4
image.c 241 KB