]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commitdiff
whisper : avoid designated initializers
authorGeorgi Gerganov <redacted>
Sat, 29 Apr 2023 07:36:50 +0000 (10:36 +0300)
committerGeorgi Gerganov <redacted>
Sat, 29 Apr 2023 07:36:50 +0000 (10:36 +0300)
whisper.cpp

index 1a13cc11ccf7b18036961084435f0b62bd64ab73..820c48becd82ff258c9f6e6cb8e169600c255e1d 100644 (file)
@@ -2607,27 +2607,22 @@ struct whisper_context * whisper_init_from_file_no_state(const char * path_model
         return nullptr;
     }
 
-    whisper_model_loader loader = {
-        .context = &fin,
-
-        .read =
-            [](void *ctx, void *output, size_t read_size) {
-              std::ifstream *fin = (std::ifstream *)ctx;
-              fin->read((char *)output, read_size);
-              return read_size;
-            },
-
-        .eof =
-            [](void *ctx) {
-              std::ifstream *fin = (std::ifstream *)ctx;
-              return fin->eof();
-            },
-
-        .close =
-            [](void *ctx) {
-              std::ifstream *fin = (std::ifstream *)ctx;
-              fin->close();
-            }
+    whisper_model_loader loader = {};
+
+    loader.read = [](void * ctx, void * output, size_t read_size) {
+        std::ifstream * fin = (std::ifstream*)ctx;
+        fin->read((char *)output, read_size);
+        return read_size;
+    };
+
+    loader.eof = [](void * ctx) {
+        std::ifstream * fin = (std::ifstream*)ctx;
+        return fin->eof();
+    };
+
+    loader.close = [](void * ctx) {
+        std::ifstream * fin = (std::ifstream*)ctx;
+        fin->close();
     };
 
     auto ctx = whisper_init_no_state(&loader);
@@ -2650,31 +2645,30 @@ struct whisper_context * whisper_init_from_buffer_no_state(void * buffer, size_t
 
     fprintf(stderr, "%s: loading model from buffer\n", __func__);
 
-    whisper_model_loader loader = {
-        .context = &ctx,
+    whisper_model_loader loader = {};
 
-        .read =
-            [](void *ctx, void *output, size_t read_size) {
-              buf_context *buf = reinterpret_cast<buf_context *>(ctx);
+    fprintf(stderr, "%s: loading model from buffer\n", __func__);
+
+    loader.context = &ctx;
 
-              size_t size_to_copy = buf->current_offset + read_size < buf->size
-                                        ? read_size
-                                        : buf->size - buf->current_offset;
+    loader.read = [](void * ctx, void * output, size_t read_size) {
+        buf_context * buf = reinterpret_cast<buf_context *>(ctx);
 
-              memcpy(output, buf->buffer + buf->current_offset, size_to_copy);
-              buf->current_offset += size_to_copy;
+        size_t size_to_copy = buf->current_offset + read_size < buf->size ? read_size : buf->size - buf->current_offset;
 
-              return size_to_copy;
-            },
+        memcpy(output, buf->buffer + buf->current_offset, size_to_copy);
+        buf->current_offset += size_to_copy;
 
-        .eof =
-            [](void *ctx) {
-              buf_context *buf = reinterpret_cast<buf_context *>(ctx);
+        return size_to_copy;
+    };
 
-              return buf->current_offset >= buf->size;
-            },
+    loader.eof = [](void * ctx) {
+        buf_context * buf = reinterpret_cast<buf_context *>(ctx);
+
+        return buf->current_offset >= buf->size;
+    };
 
-        .close = [](void * /*ctx*/) {}};
+    loader.close = [](void * /*ctx*/) { };
 
     return whisper_init_no_state(&loader);
 }