platform/shared/rubyJVM/src/com/rho/sync/SyncThread.java in rhodes-2.0.0.beta2 vs platform/shared/rubyJVM/src/com/rho/sync/SyncThread.java in rhodes-2.0.0.beta3

- old
+ new

@@ -662,11 +662,19 @@ }); klass.getSingletonClass().defineMethod("set_syncserver", new RubyOneArgMethod() { protected RubyValue run(RubyValue receiver, RubyValue arg1, RubyBlock block) { try{ - String url = arg1.toStr(); - getSyncEngine().setSyncServer(url); + String syncserver = arg1.toStr(); + + stopSync(); + getSyncEngine().setSyncServer(syncserver); + + if ( syncserver != null && syncserver.length() > 0 ) + SyncThread.getInstance().start(SyncThread.epLow); + else + SyncThread.getInstance().stop(SYNC_WAIT_BEFOREKILL_SECONDS); + }catch(Exception e) { LOG.ERROR("set_syncserver failed", e); throw (e instanceof RubyException ? (RubyException)e : new RubyException(e.getMessage())); }