protect against re-upgrading
[scpubgit/Tak.git] / lib / Tak.pm
index ce3ca2e..65a6153 100644 (file)
@@ -5,15 +5,17 @@ use strictures 1;
 
 our $VERSION = '0.001001'; # 0.1.1
 
-our $loop;
+our ($loop, $did_upgrade);
 
 sub loop { $loop ||= Tak::Loop->new }
 
 sub loop_upgrade {
+  return if $did_upgrade;
   require IO::Async::Loop;
   my $new_loop = IO::Async::Loop->new;
   $loop->pass_watches_to($new_loop) if $loop;
   $loop = $new_loop;
+  $did_upgrade = 1;
 }
 
 sub loop_until {