Vuze Forums

Full Version: BUG: Options->Connection: UDP/TCP Port
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
The content of the about box:
Java 1.8.0_20
 Oracle Corporation
SWT v4403, gtk
Linux v3.13.0-36-generic, amd64
V5.4.0.0/4 az3

Hi, i edited the UDP/TCP port (Options->Connection) and the values are evaluated during typing and not after using the save button.

So, if i like to type 50000, after typing the 5 vuze trys to make listeners at port 5 and gets an exception:
[alert] Alert:3:ERROR, unable to bind TCP incoming server socket to 5
DEBUG::Sun Sep 28 22:51:56 CEST 2014::com.aelitis.azureus.core.networkmanager.impl.tcp.VirtualBlockingServerChannelSelector::start::94:
  java.net.SocketException: Permission denied
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:436)
    at sun.nio.ch.Net.bind(Net.java:428)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at com.aelitis.azureus.core.networkmanager.impl.tcp.VirtualBlockingServerChannelSelector.start(VirtualBlockingServerChannelSelector.java:80)
    at com.aelitis.azureus.core.networkmanager.impl.tcp.IncomingSocketChannelManager.start(IncomingSocketChannelManager.java:423)
    at com.aelitis.azureus.core.networkmanager.impl.tcp.IncomingSocketChannelManager.restart(IncomingSocketChannelManager.java:499)
    at com.aelitis.azureus.core.networkmanager.impl.tcp.IncomingSocketChannelManager.access$200(IncomingSocketChannelManager.java:66)
    at com.aelitis.azureus.core.networkmanager.impl.tcp.IncomingSocketChannelManager$1.parameterChanged(IncomingSocketChannelManager.java:108)
    at org.gudy.azureus2.core3.config.impl.ConfigurationManager.notifyParameterListeners(ConfigurationManager.java:1071)
    at org.gudy.azureus2.core3.config.impl.ConfigurationManager.notifyParameterListenersIfChanged(ConfigurationManager.java:786)
    at org.gudy.azureus2.core3.config.impl.ConfigurationManager.setParameter(ConfigurationManager.java:574)
    at org.gudy.azureus2.core3.config.COConfigurationManager.setParameter(COConfigurationManager.java:349)
    at org.gudy.azureus2.ui.swt.config.ConfigParameterAdapter.setIntValue(ConfigParameterAdapter.java:105)
    at org.gudy.azureus2.ui.swt.config.generic.GenericIntParameter$1$1.runSupport(GenericIntParameter.java:96)
    at org.gudy.azureus2.core3.util.AERunnable.run(AERunnable.java:38)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3715)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3364)
    at org.gudy.azureus2.ui.swt.mainwindow.SWTThread.<init>;(SWTThread.java:297)
    at org.gudy.azureus2.ui.swt.mainwindow.SWTThread.createInstance(SWTThread.java:64)
    at com.aelitis.azureus.ui.swt.Initializer.<init>;(Initializer.java:160)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
    at org.gudy.azureus2.ui.swt.Main.<init>;(Main.java:114)
    at org.gudy.azureus2.ui.swt.Main.main(Main.java:331)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at com.aelitis.azureus.launcher.MainExecutor$1.run(MainExecutor.java:37)
    at java.lang.Thread.run(Thread.java:745)


So, the change should only be made, after pressing the save button.




 

 
I agree it isn't great - however overall the connection between the 'save' button and the persistence of changes is largely broken (there's no 'Cancel' button for good reason...) I messed around with it a bit but couldn't find a qu
(09-29-2014, 09:30 AM)'parg' Wrote: [ -> ]I agree it isn't great - however overall the connection between the 'save' button and the persistence of changes is largely broken (there's no 'Cancel' button for good reason...) I messed around with it a bit but couldn't find a qu

 


I see. I changed some things and the result was stored directly.

The save button should be removed, it is useless. This will make a lot of confusion ;-)


 
The 'save' button isn't entirely useless, although closing the options panel does an automatic-save.

There are two ways parts of Vuze listen for configuration changes - one is explicitly via parameter (the usual case) and the other at the overall save-event level. It would be possible to switch the port logic from per-parameter (with the added complexity that the spinner widget used for the port setting is generating intermediate events) to per-save, but  I'm not sure this is ideal either. I tried to prevent the intermediate event generation for the widget (and move to something like focus-lost) but this didn't work out well.
(09-29-2014, 11:31 AM)'parg' Wrote: [ -> ]The 'save' button isn't entirely useless, although closing the options panel does an automatic-save.

There are two ways parts of Vuze listen for configuration changes - one is explicitly via parameter (the usual case) and the other at the overall save-event level. It would be possible to switch the port logic from per-parameter (with the added complexity that the spinner widget used for the port setting is generating intermediate events) to per-save, but  I'm not sure this is ideal either. I tried to prevent the intermediate event generation for the widget (and move to something like focus-lost) but this didn't work out well.


 


Ok, forget it, i thought it would be easy. I was irritated, because vuze "hangs" between typing the digits. For me it works, so don't do anything more about it. Thank you!