mirror of
https://github.com/wownero/i2p-zero.git
synced 2026-10-26 10:38:49 +01:00
fixed first start race condition for router.config file being available
This commit is contained in:
@@ -17,6 +17,7 @@ import java.nio.file.Path;
|
||||
import java.nio.file.StandardCopyOption;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Optional;
|
||||
import java.util.Properties;
|
||||
|
||||
public class RouterWrapper {
|
||||
@@ -89,9 +90,20 @@ public class RouterWrapper {
|
||||
|
||||
new Thread(()->{
|
||||
try {
|
||||
|
||||
while(true) {
|
||||
if(router.isAlive()) {
|
||||
break;
|
||||
try {
|
||||
File routerConfigFile = new File(i2PBaseDir, "router.config");
|
||||
if(!routerConfigFile.exists()) continue;
|
||||
Optional<String> portString = Files.lines(routerConfigFile.toPath()).filter(s -> s.startsWith("i2np.udp.port=")).findFirst();
|
||||
if(portString.isEmpty()) continue;
|
||||
routerExternalPort = Integer.parseInt(portString.get().split("=")[1]);
|
||||
break;
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
else {
|
||||
Thread.sleep(1000);
|
||||
@@ -101,8 +113,6 @@ public class RouterWrapper {
|
||||
|
||||
System.out.println("I2P router now running");
|
||||
|
||||
File routerConfigFile = new File(i2PBaseDir, "router.config");
|
||||
routerExternalPort = Integer.parseInt(Files.lines(routerConfigFile.toPath()).filter(s->s.startsWith("i2np.udp.port=")).findFirst().get().split("=")[1]);
|
||||
new Thread(routerIsAliveCallback).start();
|
||||
|
||||
tunnelControl = new TunnelControl(this, i2PConfigDir, new File(i2PConfigDir, "tunnelTemp"));
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.3
|
||||
1.4
|
||||
Reference in New Issue
Block a user