summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-12-02 00:40:44 +0100
committerCarl Hetherington <cth@carlh.net>2020-12-03 20:16:17 +0100
commitc6e7290c176e91bf1b251ff3430ded63a8ca91db (patch)
tree8639054fac44557cb714c16effdb3706b06552b1 /src
parent3a495e7550759396b79410fa08899829d6636438 (diff)
Allow nanomsg to be null.
Diffstat (limited to 'src')
-rw-r--r--src/lib/ext.cc24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/lib/ext.cc b/src/lib/ext.cc
index 4aa8af5e8..751bab5aa 100644
--- a/src/lib/ext.cc
+++ b/src/lib/ext.cc
@@ -141,7 +141,7 @@ write (boost::filesystem::path from, boost::filesystem::path to, uint64_t& total
total_remaining -= this_time;
++progress_count;
- if ((progress_count % progress_frequency) == 0) {
+ if ((progress_count % progress_frequency) == 0 && nanomsg) {
nanomsg->send(String::compose(DISK_WRITER_COPY_PROGRESS "\n%1\n", (1 - float(total_remaining) / total)), SHORT_TIMEOUT);
}
}
@@ -183,7 +183,9 @@ read (boost::filesystem::path from, boost::filesystem::path to, uint64_t& total_
digester.add (buffer, this_time);
remaining -= this_time;
total_remaining -= this_time;
- nanomsg->send(String::compose(DISK_WRITER_VERIFY_PROGRESS "\n%1\n", (1 - float(total_remaining) / total)), SHORT_TIMEOUT);
+ if (nanomsg) {
+ nanomsg->send(String::compose(DISK_WRITER_VERIFY_PROGRESS "\n%1\n", (1 - float(total_remaining) / total)), SHORT_TIMEOUT);
+ }
}
ext4_fclose (&in);
@@ -328,7 +330,9 @@ try
}
LOG_DISK_NC ("Opened partition");
- nanomsg->send(DISK_WRITER_FORMATTING "\n", SHORT_TIMEOUT);
+ if (nanomsg) {
+ nanomsg->send(DISK_WRITER_FORMATTING "\n", SHORT_TIMEOUT);
+ }
r = ext4_mkfs(&fs, bd, &info, F_SET_EXT2);
if (r != EOK) {
@@ -374,20 +378,26 @@ try
}
ext4_device_unregister("ext4_fs");
- if (!nanomsg->send(DISK_WRITER_OK "\n", LONG_TIMEOUT)) {
+ if (nanomsg && !nanomsg->send(DISK_WRITER_OK "\n", LONG_TIMEOUT)) {
throw CommunicationFailedError ();
}
disk_write_finished ();
} catch (CopyError& e) {
LOG_DISK("CopyError (from write): %1 %2", e.message(), e.number().get_value_or(0));
- nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n%2\n", e.message(), e.number().get_value_or(0)), LONG_TIMEOUT);
+ if (nanomsg) {
+ nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n%2\n", e.message(), e.number().get_value_or(0)), LONG_TIMEOUT);
+ }
} catch (VerifyError& e) {
LOG_DISK("VerifyError (from write): %1 %2", e.message(), e.number());
- nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n%2\n", e.message(), e.number()), LONG_TIMEOUT);
+ if (nanomsg) {
+ nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n%2\n", e.message(), e.number()), LONG_TIMEOUT);
+ }
} catch (exception& e) {
LOG_DISK("Exception (from write): %1", e.what());
- nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n0\n", e.what()), LONG_TIMEOUT);
+ if (nanomsg) {
+ nanomsg->send(String::compose(DISK_WRITER_ERROR "\n%1\n0\n", e.what()), LONG_TIMEOUT);
+ }
}