[grilo] core: Correct value type for file sizes



commit 2e45b89392a44bf4baada62b28fbcf4a8cac802d
Author: Bastien Nocera <hadess hadess net>
Date:   Wed Nov 26 16:26:50 2014 +0100

    core: Correct value type for file sizes
    
    An int is obviously too small a value to fit a filesize in bytes, with
    its maximum at 2GB. Use an int64 instead.
    
    Note, this breaks ABI but should not break API.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740761

 src/data/grl-media.c   |   12 ++++++------
 src/data/grl-media.h   |    4 ++--
 src/grl-metadata-key.c |   12 ++++++------
 3 files changed, 14 insertions(+), 14 deletions(-)
---
diff --git a/src/data/grl-media.c b/src/data/grl-media.c
index 9312636..bb37d96 100644
--- a/src/data/grl-media.c
+++ b/src/data/grl-media.c
@@ -1142,11 +1142,11 @@ grl_media_set_keyword (GrlMedia *media,
  * Since: 0.2.10
  */
 void
-grl_media_set_size (GrlMedia *media, gint size)
+grl_media_set_size (GrlMedia *media, gint64 size)
 {
-  grl_data_set_int (GRL_DATA (media),
-                    GRL_METADATA_KEY_SIZE,
-                    size);
+  grl_data_set_int64 (GRL_DATA (media),
+                      GRL_METADATA_KEY_SIZE,
+                      size);
 }
 
 /**
@@ -1859,9 +1859,9 @@ grl_media_get_keyword_nth (GrlMedia *media,
  *
  * since: 0.2.10
  */
-gint
+gint64
 grl_media_get_size (GrlMedia *media)
 {
   g_return_val_if_fail (GRL_IS_MEDIA (media), -1);
-  return grl_data_get_int (GRL_DATA (media), GRL_METADATA_KEY_SIZE);
+  return grl_data_get_int64 (GRL_DATA (media), GRL_METADATA_KEY_SIZE);
 }
diff --git a/src/data/grl-media.h b/src/data/grl-media.h
index 1043229..83ec9d4 100644
--- a/src/data/grl-media.h
+++ b/src/data/grl-media.h
@@ -185,7 +185,7 @@ void grl_media_set_favourite (GrlMedia *media, gboolean favourite);
 
 void grl_media_set_keyword (GrlMedia *media, const gchar *keyword);
 
-void grl_media_set_size (GrlMedia *media, gint size);
+void grl_media_set_size (GrlMedia *media, gint64 size);
 
 void grl_media_add_url_data (GrlMedia *media, const gchar *url, const gchar *mime);
 
@@ -280,7 +280,7 @@ const gchar *grl_media_get_keyword (GrlMedia *media);
 
 const gchar * grl_media_get_keyword_nth (GrlMedia *media, guint index);
 
-gint grl_media_get_size (GrlMedia *media);
+gint64 grl_media_get_size (GrlMedia *media);
 
 GType grl_media_get_type (void) G_GNUC_CONST;
 
diff --git a/src/grl-metadata-key.c b/src/grl-metadata-key.c
index 2034ba3..7c07369 100644
--- a/src/grl-metadata-key.c
+++ b/src/grl-metadata-key.c
@@ -512,12 +512,12 @@ grl_metadata_key_setup_system_keys (GrlRegistry *registry)
                                              NULL);
 
   grl_registry_register_metadata_key_system (registry,
-                                             g_param_spec_int ("size",
-                                                               "Size",
-                                                               "Size in bytes",
-                                                               -1, G_MAXINT,
-                                                               -1,
-                                                               G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE),
+                                             g_param_spec_int64 ("size",
+                                                                 "Size",
+                                                                 "Size in bytes",
+                                                                 -1, G_MAXINT64,
+                                                                 -1,
+                                                                 G_PARAM_STATIC_STRINGS | G_PARAM_READWRITE),
                                              GRL_METADATA_KEY_SIZE,
                                              NULL);
 


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