From f37e5faa289bb1929a5b220a1a4c09e9e1b39bc0 Mon Sep 17 00:00:00 2001 From: Emil Ivov Date: Mon, 19 Apr 2010 09:48:10 +0000 Subject: [PATCH] Fixes a null pointer exception that occurs because of null transport when modifying SIP accounts --- .../plugin/sipaccregwizz/FirstWizardPage.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/net/java/sip/communicator/plugin/sipaccregwizz/FirstWizardPage.java b/src/net/java/sip/communicator/plugin/sipaccregwizz/FirstWizardPage.java index 24b4d495c..dd1728f5f 100644 --- a/src/net/java/sip/communicator/plugin/sipaccregwizz/FirstWizardPage.java +++ b/src/net/java/sip/communicator/plugin/sipaccregwizz/FirstWizardPage.java @@ -284,7 +284,7 @@ public void actionPerformed(ActionEvent evt) enableSipZrtpAttribute.setEnabled(cb.isSelected()); } }); - + advancedOpPanel.add(encryptionPanel, BorderLayout.SOUTH); advancedOpPanel.setBorder(BorderFactory.createTitledBorder(Resources @@ -446,8 +446,15 @@ public void commitPage() registration.setServerPort(serverPortField.getText()); registration.setProxy(proxyField.getText()); registration.setProxyPort(proxyPortField.getText()); - registration.setPreferredTransport(transportCombo.getSelectedItem() - .toString()); + + //Emil: it appears that sometimes the selected item may be null even + //though the combo box does not allow a null selection. + Object selectedItem = transportCombo.getSelectedItem(); + + if(selectedItem == null) + selectedItem = transportCombo.getItemAt(0); + + registration.setPreferredTransport(selectedItem.toString()); registration.setEnablePresence(enablePresOpButton.isSelected()); registration.setForceP2PMode(forceP2PPresOpButton.isSelected()); @@ -616,7 +623,7 @@ public void loadAccount(ProtocolProviderService protocolProvider) enableDefaultEncryption.setSelected(enabledDefaultEncryption); enableSipZrtpAttribute.setSelected(enabledSipZrtpAttribute); enableSipZrtpAttribute.setEnabled(enabledDefaultEncryption); - + pollPeriodField.setText(pollingPeriod); subscribeExpiresField.setText(subscriptionPeriod);