Skip to content

Commit 978844a

Browse files
authored
Merge pull request #9 from munepi/add_exception_handling
Add exception handling
2 parents 2d4ca6a + d1f69a2 commit 978844a

File tree

2 files changed

+35
-13
lines changed

2 files changed

+35
-13
lines changed

Patch.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ fi
5252
export PATH=${TLPATH}:${PATH}
5353

5454
## get app's Resources directory
55-
TLRESDIR=$(cd $(dirname $0); pwd)
55+
TLRESDIR=$(cd $(dirname "$0"); pwd)
5656

5757
## flag to set up OS-bundled Hiragino fonts with Resources/cjk-gs-support
5858
with_cjkgssupport=${with_cjkgssupport:-1} ## default: 1 (true)
@@ -260,5 +260,5 @@ updmap-sys
260260
## TODO: remove mpost, upmpost from texmf.cnf in TLROOT
261261

262262
echo Finished
263-
exit
263+
exit 0
264264
## end of file

patchapp.applescript

Lines changed: 33 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@
2222
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2323
# SOFTWARE.
2424

25-
set n to 330 -- 308 /tmp/bibunsho7-patch.log
26-
set progress total steps to n
25+
-- 700 lines /tmp/bibunsho7-patch.log => 3.5min
26+
set progressTimeout to 5 -- minutes
27+
set progressMaxN to (progressTimeout * 60 * 10)
28+
set progress total steps to progressMaxN
2729
set progress description to "Patch.app: 実行中..."
2830
set progress additional description to "待機中..."
2931

@@ -37,34 +39,54 @@ try
3739
-- activate the progress bar intentionally
3840
activate
3941

40-
repeat with i from 1 to n
42+
repeat with i from 1 to progressMaxN
4143
delay 0.1
42-
4344
-- update progress description and completed steps
4445
set progrMsg to do shell script "tail -n 1" & space & patchLog & space & "| fold"
4546
set progress additional description to progrMsg
4647
set i to do shell script "wc -l" & space & patchLog & space & "| sed \"s, *,,\" | cut -f1 -d \" \""
4748

48-
set progress completed steps to i
49+
set progress completed steps to (i * progressTimeout)
50+
51+
if progrMsg = "cjk-gs-integrate [DEBUG]: overwriting with the new one ..."
52+
set progress description to "Patch.app: 実行中... (この処理にしばらく時間がかかる場合があります)"
53+
else
54+
set progress description to "Patch.app: 実行中..."
55+
end if
4956

5057
--
51-
if progrMsg = "+ exit" then
58+
if progrMsg = "+ exit 0" then
5259
exit repeat
5360
else if progrMsg = "+ exit 1" then
5461
error number -128
5562
end if
5663
end repeat
64+
-- some exception handling
65+
if progrMsg = "+ exit 0" then
66+
else if progrMsg = "cp: /Volumes/Bibunsho7-patch/ptex-fontmaps/maps/hiragino*: No such file or directory"
67+
error number -2
68+
else
69+
error number -128
70+
end if
71+
5772
-- quit
58-
set progress completed steps to n
73+
set progress completed steps to progressMaxN
5974
set progress additional description to "完了"
6075
activate
6176
display alert "完了"
6277
return
6378

64-
on error
65-
set progrMsg to do shell script "tail -n 2" & space & patchLog & space & "| fold"
79+
on error message number errn
6680
set progress additional description to progrMsg
67-
6881
activate
69-
display alert "失敗:ログファイル" & space & patchLog & space & "をご確認ください。"
82+
83+
set plzChkLog to "失敗:ログファイル" & space & patchLog & space & "をご確認ください。"
84+
85+
if errn = -2 then
86+
display alert plzChkLog & "複数個の Bibunsho7-patch-<バージョン>.dmg を開いています。"
87+
else
88+
set progrMsg to do shell script "tail -n 2" & space & patchLog & space & "| fold"
89+
set progress additional description to progrMsg
90+
display alert plzChkLog
91+
end if
7092
end try

0 commit comments

Comments
 (0)