Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0dd32c1b authored by Daisuke Miyakawa's avatar Daisuke Miyakawa
Browse files

Make VCardComposer create the instance for mHandlerList.

Previously the creation was delayed until addHandler(), which
had been required to be called.

However, after VCardComoser's support toward PBAP stuffs,
the guarantee was not true any more.

So by creating the instance in constructor, we refrain NPE during
finalize() when PBAP uses VCardComposer.
parent 52cde727
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -294,7 +294,7 @@ public class VCardComposer {
    private final String mCharsetString;
    private final String mVCardAttributeCharset;
    private boolean mTerminateIsCalled;
    private List<OneEntryHandler> mHandlerList;
    final private List<OneEntryHandler> mHandlerList;

    private String mErrorReason = NO_ERROR;

@@ -371,6 +371,7 @@ public class VCardComposer {
        mUsesUtf8 = VCardConfig.usesUtf8(vcardType);
        mUsesShiftJis = VCardConfig.usesShiftJis(vcardType);
        mUsesQPToPrimaryProperties = VCardConfig.usesQPToPrimaryProperties(vcardType);
        mHandlerList = new ArrayList<OneEntryHandler>();

        if (mIsDoCoMo) {
            mCharsetString = CharsetUtils.charsetForVendor(SHIFT_JIS, "docomo").name();
@@ -420,9 +421,6 @@ public class VCardComposer {
     * Must call before {{@link #init()}.
     */
    public void addHandler(OneEntryHandler handler) {
        if (mHandlerList == null) {
            mHandlerList = new ArrayList<OneEntryHandler>();
        }
        mHandlerList.add(handler);
    }