kwo pushed a commit to branch master.

http://git.enlightenment.org/legacy/imlib2.git/commit/?id=1a439ed4df144df9a329c63d4fad4b3a466e093f

commit 1a439ed4df144df9a329c63d4fad4b3a466e093f
Author: Kim Woelders <k...@woelders.dk>
Date:   Fri Jul 16 19:37:16 2021 +0200

    WEBP saver: Use fopen() etc. like all other savers
---
 src/modules/loaders/loader_webp.c | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/src/modules/loaders/loader_webp.c 
b/src/modules/loaders/loader_webp.c
index 54e293a..0cf9ec8 100644
--- a/src/modules/loaders/loader_webp.c
+++ b/src/modules/loaders/loader_webp.c
@@ -1,6 +1,4 @@
 #include "loader_common.h"
-
-#include <fcntl.h>
 #include <sys/stat.h>
 #include <webp/decode.h>
 #include <webp/encode.h>
@@ -121,16 +119,17 @@ load2(ImlibImage * im, int load_data)
 char
 save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
 {
+   FILE               *f;
    int                 rc;
-   int                 encoded_fd;
    ImlibImageTag      *quality_tag;
    float               quality;
    uint8_t            *encoded_data;
-   ssize_t             encoded_size;
+   size_t              encoded_size;
 
-   encoded_fd = open(im->real_file,
-                     O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP | 
S_IROTH);
-   if (encoded_fd < 0)
+   printf("FOO\n");
+
+   f = fopen(im->real_file, "wb");
+   if (!f)
       return LOAD_FAIL;
 
    rc = LOAD_FAIL;
@@ -161,7 +160,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
    encoded_size = WebPEncodeBGRA((uint8_t *) im->data, im->w, im->h,
                                  im->w * 4, quality, &encoded_data);
 
-   if (write(encoded_fd, encoded_data, encoded_size) < encoded_size)
+   if (fwrite(encoded_data, encoded_size, 1, f) != encoded_size)
       goto quit;
 
    rc = LOAD_SUCCESS;
@@ -169,7 +168,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
  quit:
    if (encoded_data)
       WebPFree(encoded_data);
-   close(encoded_fd);
+   fclose(f);
 
    return rc;
 }

-- 


Reply via email to