Imported Upstream version 3.3.1
[debian/amanda] / perl / Amanda / Device.swg
index 479015d38da21ffffc025d1c39cf4cf2766c49b8..d40031605f9bbb5955f3b74857ced43ba0212182 100644 (file)
@@ -31,6 +31,8 @@
 #include "fileheader.h"
 #include "glib-util.h"
 #include "simpleprng.h"
+#include "amanda.h"
+#include "sockaddr-util.h"
 %}
 
 %init %{
@@ -495,18 +497,22 @@ typedef struct Device {
        gboolean
        property_set(DevicePropertyBase *pbase, SV *sv) {
            GValue gval;
+
+           if (!pbase)
+               goto fail;
            memset(&gval, 0, sizeof(gval));
            g_value_init(&gval, pbase->type);
            if (!set_gvalue_from_sv(sv, &gval))
-               goto fail;
+               goto failunset;
 
            if (!device_property_set(self, pbase->ID, &gval))
-               goto fail;
+               goto failunset;
 
            g_value_unset(&gval);
            return TRUE;
-       fail:
+       failunset:
            g_value_unset(&gval);
+       fail:
            return FALSE;
        }
 
@@ -548,6 +554,7 @@ typedef struct Device {
        gsize min_block_size(void) { return self->min_block_size; }
        gsize max_block_size(void) { return self->max_block_size; }
        gsize block_size(void) { return self->block_size; }
+       gsize header_block_size(void) { return self->header_block_size; }
        dumpfile_t *volume_header(void) { return self->volume_header; }
     };