[librsvg/librsvg-2.50] Port obsolete C stub functions to Rust



commit 1ff364c6db8d58020ee145adbec5c8601af7c387
Author: Sven Neumann <sven svenfoo org>
Date:   Fri Sep 18 08:09:52 2020 +0200

    Port obsolete C stub functions to Rust
    
    Closes #625

 librsvg/c_api.rs      | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 librsvg/rsvg-base.c   |  8 ++++++++
 librsvg/rsvg-handle.c | 30 +++++++++++++-----------------
 3 files changed, 67 insertions(+), 17 deletions(-)
---
diff --git a/librsvg/c_api.rs b/librsvg/c_api.rs
index 5985f3c6..2a11a710 100644
--- a/librsvg/c_api.rs
+++ b/librsvg/c_api.rs
@@ -1927,6 +1927,52 @@ pub unsafe extern "C" fn rsvg_rust_handle_render_element(
     }
 }
 
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_handle_get_desc(handle: *const RsvgHandle) -> *mut libc::c_char {
+    rsvg_return_val_if_fail! {
+        rsvg_handle_get_desc => ptr::null_mut();
+
+        is_rsvg_handle(handle),
+    }
+
+    ptr::null_mut()
+}
+
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_handle_get_metadata(
+    handle: *const RsvgHandle,
+) -> *mut libc::c_char {
+    rsvg_return_val_if_fail! {
+        rsvg_handle_get_metadata => ptr::null_mut();
+
+        is_rsvg_handle(handle),
+    }
+
+    ptr::null_mut()
+}
+
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_handle_get_title(
+    handle: *const RsvgHandle,
+) -> *mut libc::c_char {
+    rsvg_return_val_if_fail! {
+        rsvg_handle_get_title => ptr::null_mut();
+
+        is_rsvg_handle(handle),
+    }
+
+    ptr::null_mut()
+}
+
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_init() {}
+
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_term() {}
+
+#[no_mangle]
+pub unsafe extern "C" fn rsvg_rust_cleanup() {}
+
 /// Detects whether a `*const libc::c_char` is a path or a URI
 ///
 /// `rsvg_handle_new_from_file()` takes a `filename` argument, and advertises
diff --git a/librsvg/rsvg-base.c b/librsvg/rsvg-base.c
index 1f7d9208..b2280695 100644
--- a/librsvg/rsvg-base.c
+++ b/librsvg/rsvg-base.c
@@ -34,6 +34,11 @@ extern void rsvg_rust_set_default_dpi_x_y(double dpi_x, double dpi_y);
 /* Implemented in rsvg_internals/src/error.rs */
 extern GQuark rsvg_rust_error_quark (void);
 
+/* Implemented in librsvg/c_api.rs */
+extern void rsvg_rust_init (void);
+extern void rsvg_rust_term (void);
+extern void rsvg_rust_cleanup (void);
+
 /**
  * rsvg_error_quark:
  *
@@ -99,6 +104,7 @@ rsvg_set_default_dpi_x_y (double dpi_x, double dpi_y)
 void
 rsvg_init (void)
 {
+    rsvg_rust_init ();
 }
 
 /**
@@ -112,6 +118,7 @@ rsvg_init (void)
 void
 rsvg_term (void)
 {
+    rsvg_rust_term ();
 }
 
 /**
@@ -124,6 +131,7 @@ rsvg_term (void)
 void
 rsvg_cleanup (void)
 {
+    rsvg_rust_cleanup ();
 }
 
 /* This is defined like this so that we can export the Rust function... just for
diff --git a/librsvg/rsvg-handle.c b/librsvg/rsvg-handle.c
index bc06d4a2..95364db3 100644
--- a/librsvg/rsvg-handle.c
+++ b/librsvg/rsvg-handle.c
@@ -323,12 +323,12 @@
 #include "rsvg.h"
 
 /* Implemented in rsvg_internals/src/handle.rs */
-extern void rsvg_rust_handle_set_dpi (RsvgHandle *raw_handle, double dpi);
-extern void rsvg_rust_handle_set_dpi_x_y (RsvgHandle *raw_handle, double dpi_x, double dpi_y);
-extern void rsvg_rust_handle_set_base_url (RsvgHandle *raw_handle, const char *uri);
-extern void rsvg_rust_handle_set_base_gfile (RsvgHandle *raw_handle, GFile *file);
-extern const char *rsvg_rust_handle_get_base_url (RsvgHandle *raw_handle);
-extern guint rsvg_rust_handle_set_testing (RsvgHandle *raw_handle, gboolean testing);
+extern void rsvg_rust_handle_set_dpi (RsvgHandle *handle, double dpi);
+extern void rsvg_rust_handle_set_dpi_x_y (RsvgHandle *handle, double dpi_x, double dpi_y);
+extern void rsvg_rust_handle_set_base_url (RsvgHandle *handle, const char *uri);
+extern void rsvg_rust_handle_set_base_gfile (RsvgHandle *handle, GFile *file);
+extern const char *rsvg_rust_handle_get_base_url (RsvgHandle *handle);
+extern guint rsvg_rust_handle_set_testing (RsvgHandle *handle, gboolean testing);
 extern gboolean rsvg_rust_handle_read_stream_sync (RsvgHandle *handle,
                                                    GInputStream *stream,
                                                    GCancellable *cancellable,
@@ -350,7 +350,7 @@ extern gboolean rsvg_rust_handle_get_dimensions_sub (RsvgHandle *handle,
 extern gboolean rsvg_rust_handle_get_position_sub (RsvgHandle *handle,
                                                    RsvgPositionData *dimension_data,
                                                    const char *id);
-extern void rsvg_rust_handle_set_size_callback (RsvgHandle *raw_handle,
+extern void rsvg_rust_handle_set_size_callback (RsvgHandle *handle,
                                                 RsvgSizeFunc size_func,
                                                 gpointer user_data,
                                                 GDestroyNotify destroy_notify);
@@ -408,7 +408,9 @@ extern gboolean rsvg_rust_handle_render_element (RsvgHandle           *handle,
                                                  const char           *id,
                                                  const RsvgRectangle  *element_viewport,
                                                  GError              **error);
-
+extern const char *rsvg_rust_handle_get_desc (RsvgHandle *handle);
+extern const char *rsvg_rust_handle_get_metadata (RsvgHandle *handle);
+extern const char *rsvg_rust_handle_get_title (RsvgHandle *handle);
 
 
 /* Implemented in librsvg/c_api.rs */
@@ -777,9 +779,7 @@ rsvg_handle_set_stylesheet (RsvgHandle   *handle,
 const char *
 rsvg_handle_get_metadata (RsvgHandle * handle)
 {
-    g_return_val_if_fail (handle, NULL);
-
-    return NULL;
+    return rsvg_rust_handle_get_metadata (handle);
 }
 
 /**
@@ -796,9 +796,7 @@ rsvg_handle_get_metadata (RsvgHandle * handle)
 const char *
 rsvg_handle_get_title (RsvgHandle *handle)
 {
-    g_return_val_if_fail (handle, NULL);
-
-    return NULL;
+    return rsvg_rust_handle_get_title (handle);
 }
 
 /**
@@ -815,9 +813,7 @@ rsvg_handle_get_title (RsvgHandle *handle)
 const char *
 rsvg_handle_get_desc (RsvgHandle *handle)
 {
-    g_return_val_if_fail (handle, NULL);
-
-    return NULL;
+    return rsvg_rust_handle_get_desc (handle);
 }
 
 /**


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]