]> www.fi.muni.cz Git - evince.git/blobdiff - libdocument/ev-form-field.c
Add EvPage so that we can hold a reference to the backend page. Form
[evince.git] / libdocument / ev-form-field.c
index cfa25f82c84cb98e02b42e9ebdb4294fd8407b03..130b6c0888e2c0a28b63812dedd32cd158a68f8d 100644 (file)
@@ -42,14 +42,28 @@ G_DEFINE_TYPE (EvFormFieldSignature, ev_form_field_signature, EV_TYPE_FORM_FIELD
 static void
 ev_form_field_init (EvFormField *field)
 {
-       field->page = -1;
+       field->page = NULL;
        field->changed = FALSE;
        field->is_read_only = FALSE;
 }
 
+static void
+ev_form_field_finalize (GObject *object)
+{
+       EvFormField *field = EV_FORM_FIELD (object);
+
+       g_object_unref (field->page);
+       field->page = NULL;
+
+       (* G_OBJECT_CLASS (ev_form_field_parent_class)->finalize) (object);
+}
+
 static void
 ev_form_field_class_init (EvFormFieldClass *klass)
 {
+       GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+       object_class->finalize = ev_form_field_finalize;
 }
 
 static void