diff --git a/apps/i2psnark/java/src/org/klomp/snark/UpdateRunner.java b/apps/i2psnark/java/src/org/klomp/snark/UpdateRunner.java
index fca2543179393213770192e994b4c7a902e54ae7..3c04feea9c1a9489349799bc6753bbd8d47f70e0 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/UpdateRunner.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/UpdateRunner.java
@@ -186,7 +186,9 @@ class UpdateRunner implements UpdateTask, CompleteListener {
     private void fatal(String error) {
             if (_snark != null) {
                 if (_hasMetaInfo) {
-                    _smgr.stopTorrent(_snark, true);
+                    // avoid loop stopTorrent() ... updateStatus() ... fatal() ...
+                    if (!_snark.isStopped())
+                        _smgr.stopTorrent(_snark, true);
                     String file = _snark.getName();
                     _smgr.removeTorrent(file);
                     // delete torrent file