diff --git a/lib/installer-exclude/fmj.jar b/lib/installer-exclude/fmj.jar
index 44e9d29e4..0f451ffaa 100644
Binary files a/lib/installer-exclude/fmj.jar and b/lib/installer-exclude/fmj.jar differ
diff --git a/src/net/java/sip/communicator/impl/protocol/jabber/OperationSetPersistentPresenceJabberImpl.java b/src/net/java/sip/communicator/impl/protocol/jabber/OperationSetPersistentPresenceJabberImpl.java
index 00a93a7b6..e46ecd985 100644
--- a/src/net/java/sip/communicator/impl/protocol/jabber/OperationSetPersistentPresenceJabberImpl.java
+++ b/src/net/java/sip/communicator/impl/protocol/jabber/OperationSetPersistentPresenceJabberImpl.java
@@ -479,12 +479,20 @@ else if(status.equals(jabberStatusEnum.getStatus(
fireProviderStatusChangeEvent(currentStatus, status);
- if(!getCurrentStatusMessage().equals(statusMessage))
+ String oldStatusMessage = getCurrentStatusMessage();
+
+ /*
+ * XXX Use StringUtils.isEquals instead of String.equals to avoid a
+ * NullPointerException.
+ */
+ if(!org.jitsi.util.StringUtils.isEquals(
+ oldStatusMessage,
+ statusMessage))
{
- String oldStatusMessage = getCurrentStatusMessage();
currentStatusMessage = statusMessage;
- fireProviderStatusMessageChangeEvent(oldStatusMessage,
- getCurrentStatusMessage());
+ fireProviderStatusMessageChangeEvent(
+ oldStatusMessage,
+ getCurrentStatusMessage());
}
}
diff --git a/src/net/java/sip/communicator/plugin/addrbook/msoutlook/calendar/RecurringPattern.java b/src/net/java/sip/communicator/plugin/addrbook/msoutlook/calendar/RecurringPattern.java
index 68fb9bd16..6717a9137 100644
--- a/src/net/java/sip/communicator/plugin/addrbook/msoutlook/calendar/RecurringPattern.java
+++ b/src/net/java/sip/communicator/plugin/addrbook/msoutlook/calendar/RecurringPattern.java
@@ -21,12 +21,12 @@
public class RecurringPattern
{
/**
- * The Logger used by the RecurringPattern
- * class and its instances for logging output.
+ * The Logger used by the RecurringPattern class and its
+ * instances for logging output.
*/
private static final Logger logger
= Logger.getLogger(RecurringPattern.class);
-
+
/**
* Enum for the type of the pattern.
*/
@@ -36,47 +36,47 @@ public enum PatternType
* Daily recurrence.
*/
Day((short)0x0000),
-
+
/**
* Weekly recurrence.
*/
Week((short)0x0001),
-
+
/**
* Monthly recurrence.
*/
Month((short)0x0002),
-
+
/**
* Monthly recurrence.
*/
MonthNth((short)0x0003),
-
+
/**
* Monthly recurrence.
*/
MonthEnd((short)0x004),
-
+
/**
* Monthly recurrence.
*/
HjMonth((short)0x000A),
-
+
/**
* Monthly recurrence.
*/
HjMonthNth((short)0x000B),
-
+
/**
* Monthly recurrence.
*/
HjMonthEnd((short)0x000C);
-
+
/**
* The value of the type.
*/
- private short value = 0;
-
+ private final short value;
+
/**
* Constructs new PatternType instance.
* @param value the value.
@@ -85,7 +85,7 @@ public enum PatternType
{
this.value = value;
}
-
+
/**
* Returns the value of the PatternType instance.
* @return the value
@@ -94,7 +94,7 @@ public short getValue()
{
return value;
}
-
+
/**
* Finds the PatternType by given value.
* @param value the value
@@ -106,14 +106,12 @@ public static PatternType getFromShort(short value)
for(PatternType type : values())
{
if(type.getValue() == value)
- {
return type;
- }
}
return null;
}
- };
-
+ }
+
/**
* The value of recurFrequency field.
*/
@@ -271,9 +269,7 @@ public RecurringPattern(byte[] data, CalendarItemTimerTask sourceTask)
for(int day = firstDow; day < firstDow + 7; day++)
{
if((patternSpecific1 & (weekOfDayMask[day%7])) != 0)
- {
allowedDaysOfWeek.add((day%7) + 1);
- }
}
}
break;
@@ -288,9 +284,7 @@ public RecurringPattern(byte[] data, CalendarItemTimerTask sourceTask)
for(int day = 0; day < 7; day++)
{
if((patternSpecific1 & (weekOfDayMask[day])) != 0)
- {
allowedDaysOfWeek.add((day) + 1);
- }
}
offset +=8;
break;
@@ -732,9 +726,7 @@ public CalendarItemTimerTask nextMonth(Date startDate, Date endDate,
{
executeNow = true;
}
-
-
-
+
return new CalendarItemTimerTask(
sourceTask.getStatus(),
startDate, endDate, sourceTask.getId(), executeNow, this);