This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository legacy-imlib2.

View the commit online.

commit ed89effcf35ee311cc44d32110a3878dcd0f696f
Author: Kim Woelders <[email protected]>
AuthorDate: Mon Sep 26 14:56:10 2022 +0200

    api: error_return adjustments
    
    - Drop imlib_load_image_fde()
    - Remove error_return from imlib_load_image_mem()
    
    It is becoming somewhat messy having functions with and without error
    returns, so drop error returns in API functions added since v1.9.1.
    Use imlib_get_error() to get the error instead.
---
 src/bin/imlib2_load.c | 23 ++++++++++++++---------
 src/lib/Imlib2.h.in   | 29 +----------------------------
 src/lib/api.c         | 13 ++-----------
 test/test_load.cpp    | 11 +++++++----
 4 files changed, 24 insertions(+), 52 deletions(-)

diff --git a/src/bin/imlib2_load.c b/src/bin/imlib2_load.c
index 38b0d99..91f1284 100644
--- a/src/bin/imlib2_load.c
+++ b/src/bin/imlib2_load.c
@@ -85,7 +85,13 @@ image_load_fd(const char *file, int *perr)
       ext = file;
 
    fd = open(file, O_RDONLY);
-   im = imlib_load_image_fde(ext, perr, fd);
+   if (fd < 0)
+     {
+        *perr = errno;
+        return NULL;
+     }
+
+   im = imlib_load_image_fd(fd, ext);
 
    return im;
 }
@@ -122,7 +128,7 @@ image_load_mem(const char *file, int *perr)
    if (fdata == MAP_FAILED)
       goto bail;
 
-   im = imlib_load_image_mem(ext, &err, fdata, st.st_size);
+   im = imlib_load_image_mem(ext, fdata, st.st_size);
 
  quit:
    if (fdata != MAP_FAILED)
@@ -234,12 +240,12 @@ main(int argc, char **argv)
 
         for (cnt = 0; cnt < load_cnt; cnt++)
           {
-             err = -1000;
+             err = 0;
 
              switch (load_mode)
                {
                case LOAD_IMMED:
-                  im = imlib_load_image_with_errno_return(argv[0], &err);
+                  im = imlib_load_image_immediately(argv[0]);
                   break;
                case LOAD_FROM_FD:
                   im = image_load_fd(argv[0], &err);
@@ -262,11 +268,10 @@ main(int argc, char **argv)
 
              if (!im)
                {
-                  if (err > -1000)
-                     fprintf(fout, "*** Error %d:'%s' loading image: '%s'\n",
-                             err, imlib_strerror(err), argv[0]);
-                  else
-                     fprintf(fout, "*** Failed to load image: '%s'\n", argv[0]);
+                  if (err == 0)
+                     err = imlib_get_error();
+                  fprintf(fout, "*** Error %d:'%s' loading image: '%s'\n",
+                          err, imlib_strerror(err), argv[0]);
 
                   if (break_on_error & 2)
                      goto quit;
diff --git a/src/lib/Imlib2.h.in b/src/lib/Imlib2.h.in
index 5445c0e..00f56ef 100644
--- a/src/lib/Imlib2.h.in
+++ b/src/lib/Imlib2.h.in
@@ -829,26 +829,6 @@ EAPI Imlib_Image    imlib_load_image_with_errno_return(const char *file,
  */
 EAPI Imlib_Image    imlib_load_image_fd(int fd, const char *file);
 
-/**
- * Read an image from file descriptor with error return
- *
- * Same as imlib_load_image_fd() but with error return.
- *
- * On error @p error_return is set to the detail of the error.
- * error values:
- *          0: Success,
- *   positive: Regular errnos,
- *   negative: IMLIB_ERR_... values, see above
- *
- * @param file          File name
- * @param error_return  The returned error
- * @param fd            Image file descriptor
- *
- * @return Image handle (NULL on failure)
- */
-EAPI Imlib_Image    imlib_load_image_fde(const char *file, int *error_return,
-                                         int fd);
-
 /**
  * Read an image from memory
  *
@@ -856,20 +836,13 @@ EAPI Imlib_Image    imlib_load_image_fde(const char *file, int *error_return,
  * The image is loaded without deferred image data decoding and without
  * looking in the cache.
  *
- * On error @p error_return is set to the detail of the error.
- * error values:
- *          0: Success,
- *   positive: Regular errnos,
- *   negative: IMLIB_ERR_... values, see above
- *
  * @param file          File name
- * @param error_return  The returned error
  * @param data          Image data
  * @param size          Image data size
  *
  * @return Image handle (NULL on failure)
  */
-EAPI Imlib_Image    imlib_load_image_mem(const char *file, int *error_return,
+EAPI Imlib_Image    imlib_load_image_mem(const char *file,
                                          const void *data, size_t size);
 
 /**
diff --git a/src/lib/api.c b/src/lib/api.c
index 4607b5e..fa67dde 100644
--- a/src/lib/api.c
+++ b/src/lib/api.c
@@ -598,7 +598,7 @@ imlib_load_image_with_errno_return(const char *file, int *error_return)
 }
 
 EAPI                Imlib_Image
-imlib_load_image_fde(const char *file, int *err, int fd)
+imlib_load_image_fd(int fd, const char *file)
 {
    Imlib_Image         im;
    ImlibLoadArgs       ila = { ILA0(ctx, 1, 1) };
@@ -619,20 +619,11 @@ imlib_load_image_fde(const char *file, int *err, int fd)
         close(fd);
      }
 
-   if (err)
-      *err = ctx->error;
-
    return im;
 }
 
 EAPI                Imlib_Image
-imlib_load_image_fd(int fd, const char *file)
-{
-   return imlib_load_image_fde(file, NULL, fd);
-}
-
-EAPI                Imlib_Image
-imlib_load_image_mem(const char *file, int *err, const void *data, size_t size)
+imlib_load_image_mem(const char *file, const void *data, size_t size)
 {
    Imlib_Image         im;
    ImlibLoadArgs       ila = { ILA0(ctx, 1, 1) };
diff --git a/test/test_load.cpp b/test/test_load.cpp
index 8f7b6c0..67e1a88 100644
--- a/test/test_load.cpp
+++ b/test/test_load.cpp
@@ -194,11 +194,12 @@ test_load(void)
         fd = open(fileo, O_RDONLY);
         D("Load fd %d '%s'\n", fd, fileo);
         snprintf(fileo, sizeof(fileo), ".%s", pfxs[i]);
-        im = imlib_load_image_fde(pfxs[i], &err, fd);
+        im = imlib_load_image_fd(fd, pfxs[i]);
+        err = imlib_get_error();
         EXPECT_TRUE(im);
+        EXPECT_EQ(err, 0);
         if (im)
            image_free(im);
-        EXPECT_EQ(err, 0);
         err = close(fd);
         EXPECT_NE(err, 0);
 
@@ -220,8 +221,10 @@ test_load(void)
           {
              D("Load mem[%d] %d '%s'\n", n, fd, fileo);
              snprintf(fileo, sizeof(fileo), ".%s", pfxs[i]);
-             im = imlib_load_image_mem(pfxs[i], &err, fdata, st.st_size);
-             EXPECT_TRUE(im) << "Load mem: " << fileo;
+             im = imlib_load_image_mem(pfxs[i], fdata, st.st_size);
+             err = imlib_get_error();
+             EXPECT_TRUE(im);
+             EXPECT_EQ(err, 0);
              if (im)
                 image_free(im);
           }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to