Coverage Report

Created: 2025-06-13 06:08

/src/giflib-code/gif_err.c
Line
Count
Source (jump to first uncovered line)
1
/*****************************************************************************
2
3
gif_err.c - handle error reporting for the GIF library.
4
5
****************************************************************************/
6
// SPDX-License-Identifier: MIT
7
// SPDX-File-Copyright-Txt: (C) Copyright 1989 Gershon Elber
8
9
#include <stdio.h>
10
11
#include "gif_lib.h"
12
#include "gif_lib_private.h"
13
14
/*****************************************************************************
15
 Return a string description of  the last GIF error
16
*****************************************************************************/
17
0
const char *GifErrorString(int ErrorCode) {
18
0
  const char *Err;
19
20
0
  switch (ErrorCode) {
21
0
  case E_GIF_ERR_OPEN_FAILED:
22
0
    Err = "Failed to open given file";
23
0
    break;
24
0
  case E_GIF_ERR_WRITE_FAILED:
25
0
    Err = "Failed to write to given file";
26
0
    break;
27
0
  case E_GIF_ERR_HAS_SCRN_DSCR:
28
0
    Err = "Screen descriptor has already been set";
29
0
    break;
30
0
  case E_GIF_ERR_HAS_IMAG_DSCR:
31
0
    Err = "Image descriptor is still active";
32
0
    break;
33
0
  case E_GIF_ERR_NO_COLOR_MAP:
34
0
    Err = "Neither global nor local color map";
35
0
    break;
36
0
  case E_GIF_ERR_DATA_TOO_BIG:
37
0
    Err = "Number of pixels bigger than width * height";
38
0
    break;
39
0
  case E_GIF_ERR_NOT_ENOUGH_MEM:
40
0
    Err = "Failed to allocate required memory";
41
0
    break;
42
0
  case E_GIF_ERR_DISK_IS_FULL:
43
0
    Err = "Write failed (disk full?)";
44
0
    break;
45
0
  case E_GIF_ERR_CLOSE_FAILED:
46
0
    Err = "Failed to close given file";
47
0
    break;
48
0
  case E_GIF_ERR_NOT_WRITEABLE:
49
0
    Err = "Given file was not opened for write";
50
0
    break;
51
0
  case D_GIF_ERR_OPEN_FAILED:
52
0
    Err = "Failed to open given file";
53
0
    break;
54
0
  case D_GIF_ERR_READ_FAILED:
55
0
    Err = "Failed to read from given file";
56
0
    break;
57
0
  case D_GIF_ERR_NOT_GIF_FILE:
58
0
    Err = "Data is not in GIF format";
59
0
    break;
60
0
  case D_GIF_ERR_NO_SCRN_DSCR:
61
0
    Err = "No screen descriptor detected";
62
0
    break;
63
0
  case D_GIF_ERR_NO_IMAG_DSCR:
64
0
    Err = "No Image Descriptor detected";
65
0
    break;
66
0
  case D_GIF_ERR_NO_COLOR_MAP:
67
0
    Err = "Neither global nor local color map";
68
0
    break;
69
0
  case D_GIF_ERR_WRONG_RECORD:
70
0
    Err = "Wrong record type detected";
71
0
    break;
72
0
  case D_GIF_ERR_DATA_TOO_BIG:
73
0
    Err = "Number of pixels bigger than width * height";
74
0
    break;
75
0
  case D_GIF_ERR_NOT_ENOUGH_MEM:
76
0
    Err = "Failed to allocate required memory";
77
0
    break;
78
0
  case D_GIF_ERR_CLOSE_FAILED:
79
0
    Err = "Failed to close given file";
80
0
    break;
81
0
  case D_GIF_ERR_NOT_READABLE:
82
0
    Err = "Given file was not opened for read";
83
0
    break;
84
0
  case D_GIF_ERR_IMAGE_DEFECT:
85
0
    Err = "Image is defective, decoding aborted";
86
0
    break;
87
0
  case D_GIF_ERR_EOF_TOO_SOON:
88
0
    Err = "Image EOF detected before image complete";
89
0
    break;
90
0
  default:
91
0
    Err = NULL;
92
0
    break;
93
0
  }
94
0
  return Err;
95
0
}
96
97
/* end */