lib/command/send.rb in narou-1.7.2 vs lib/command/send.rb in narou-2.0.0
- old
+ new
@@ -55,19 +55,19 @@
device = get_device(argv)
unless device
error "デバイス名が指定されていないか、間違っています。\n" +
"narou setting device=デバイス名 で指定出来ます。\n" +
"指定出来るデバイス名:" + Device::DEVICES.keys.join(", ")
- exit 1
+ exit Narou::EXIT_ERROR_CODE
end
unless device.physical_support?
error "#{device.display_name} への直接送信は対応していません"
- exit 1
+ exit Narou::EXIT_ERROR_CODE
end
unless device.connecting?
error "#{device.display_name} が接続されていません"
- exit 1
+ exit Narou::EXIT_ERROR_CODE
end
send_all = false
titles = {}
if argv.empty?
send_all = true
@@ -96,10 +96,11 @@
end
end
print "#{device.name}へ送信しています"
exit_copy = false
copy_to_path = nil
+ Thread.abort_on_exception = true
Thread.new do
copy_to_path = device.copy_to_documents(ebook_path)
exit_copy = true
end
until exit_copy
@@ -109,14 +110,14 @@
puts
if copy_to_path
puts copy_to_path + " へコピーしました"
else
error "#{device.name}が見つからなかったためコピー出来ませんでした"
- exit 1 # next しても次も失敗すると分かりきっているためここで終了する
+ exit Narou::EXIT_ERROR_CODE # next しても次も失敗すると分かりきっているためここで終了する
end
end
- rescue Interrupt
+ rescue Device::SendFailure, Interrupt
puts "送信を中断しました"
- exit 1
+ exit Narou::EXIT_ERROR_CODE
end
end
end