projects
/
debian
/
amanda
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Imported Upstream version 3.3.2
[debian/amanda]
/
device-src
/
null-device.c
diff --git
a/device-src/null-device.c
b/device-src/null-device.c
index 3f1bf3473e07c30a59772b4da19cc08e9c59100b..d5f7106d7754653ef8d71d649215cebe5f1c72d6 100644
(file)
--- a/
device-src/null-device.c
+++ b/
device-src/null-device.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (c) 2007
, 2008, 2009, 2010
Zmanda, Inc. All Rights Reserved.
+ * Copyright (c) 2007
-2012
Zmanda, Inc. All Rights Reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published
@@
-50,7
+50,6
@@
struct _NullDevice {
typedef struct _NullDeviceClass NullDeviceClass;
struct _NullDeviceClass {
DeviceClass __parent__;
typedef struct _NullDeviceClass NullDeviceClass;
struct _NullDeviceClass {
DeviceClass __parent__;
- gboolean in_file;
};
void null_device_register(void);
};
void null_device_register(void);
@@
-237,7
+236,9
@@
null_device_start (Device * pself, DeviceAccessMode mode,
if (device_in_error(self)) return FALSE;
pself->access_mode = mode;
if (device_in_error(self)) return FALSE;
pself->access_mode = mode;
+ g_mutex_lock(pself->device_mutex);
pself->in_file = FALSE;
pself->in_file = FALSE;
+ g_mutex_unlock(pself->device_mutex);
if (mode == ACCESS_WRITE) {
pself->volume_label = newstralloc(pself->volume_label, label);
if (mode == ACCESS_WRITE) {
pself->volume_label = newstralloc(pself->volume_label, label);
@@
-266,7
+267,9
@@
static gboolean
null_device_start_file(Device * d_self,
dumpfile_t * jobInfo G_GNUC_UNUSED)
{
null_device_start_file(Device * d_self,
dumpfile_t * jobInfo G_GNUC_UNUSED)
{
+ g_mutex_lock(d_self->device_mutex);
d_self->in_file = TRUE;
d_self->in_file = TRUE;
+ g_mutex_unlock(d_self->device_mutex);
d_self->is_eom = FALSE;
d_self->block = 0;
if (d_self->file <= 0)
d_self->is_eom = FALSE;
d_self->block = 0;
if (d_self->file <= 0)
@@
-294,6
+297,8
@@
static gboolean
null_device_finish_file(Device * pself) {
if (device_in_error(pself)) return FALSE;
null_device_finish_file(Device * pself) {
if (device_in_error(pself)) return FALSE;
+ g_mutex_lock(pself->device_mutex);
pself->in_file = FALSE;
pself->in_file = FALSE;
+ g_mutex_unlock(pself->device_mutex);
return TRUE;
}
return TRUE;
}