[gnome-color-manager] Add a trivial function, gcm_edid_reset()
- From: Richard Hughes <rhughes src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-color-manager] Add a trivial function, gcm_edid_reset()
- Date: Wed, 2 Dec 2009 14:25:22 +0000 (UTC)
commit 24dd7d0d7fa16720666f4caf69ef9c4f1470456a
Author: Richard Hughes <richard hughsie com>
Date: Wed Dec 2 14:04:26 2009 +0000
Add a trivial function, gcm_edid_reset()
src/gcm-edid.c | 38 ++++++++++++++++++++++++++++++--------
src/gcm-edid.h | 1 +
2 files changed, 31 insertions(+), 8 deletions(-)
---
diff --git a/src/gcm-edid.c b/src/gcm-edid.c
index a0a8032..a5c30f9 100644
--- a/src/gcm-edid.c
+++ b/src/gcm-edid.c
@@ -92,6 +92,35 @@ G_DEFINE_TYPE (GcmEdid, gcm_edid, G_TYPE_OBJECT)
/**
+ * gcm_edid_reset:
+ **/
+void
+gcm_edid_reset (GcmEdid *edid)
+{
+ GcmEdidPrivate *priv = edid->priv;
+
+ g_return_if_fail (GCM_IS_EDID (edid));
+
+ /* free old data */
+ g_free (priv->monitor_name);
+ g_free (priv->vendor_name);
+ g_free (priv->serial_number);
+ g_free (priv->ascii_string);
+
+ /* do not deallocate, just blank */
+ priv->pnp_id[0] = '\0';
+
+ /* set to default values */
+ priv->monitor_name = NULL;
+ priv->vendor_name = NULL;
+ priv->serial_number = NULL;
+ priv->ascii_string = NULL;
+ priv->width = 0;
+ priv->height = 0;
+ priv->gamma = 0.0f;
+}
+
+/**
* gcm_edid_parse:
**/
gboolean
@@ -115,14 +144,7 @@ gcm_edid_parse (GcmEdid *edid, const guint8 *data, GError **error)
}
/* free old data */
- g_free (priv->monitor_name);
- g_free (priv->vendor_name);
- g_free (priv->serial_number);
- g_free (priv->ascii_string);
- priv->monitor_name = NULL;
- priv->vendor_name = NULL;
- priv->serial_number = NULL;
- priv->ascii_string = NULL;
+ gcm_edid_reset (edid);
/* decode the PNP ID from three 5 bit words packed into 2 bytes
* /--08--\/--09--\
diff --git a/src/gcm-edid.h b/src/gcm-edid.h
index 0385b1f..ac3dfca 100644
--- a/src/gcm-edid.h
+++ b/src/gcm-edid.h
@@ -56,6 +56,7 @@ struct _GcmEdidClass
GType gcm_edid_get_type (void);
GcmEdid *gcm_edid_new (void);
+void gcm_edid_reset (GcmEdid *edid);
gboolean gcm_edid_parse (GcmEdid *edid,
const guint8 *data,
GError **error);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]