Submitting this because I dont have the time (or resources) to debug this atm and need a self-reminder:
On Win32 walletpassphrase does not appear to relock after the designated amount of time as it should and as it does on Linux.
Can someone check this on OSX as well?

return;
    std::map<int64_t, CWaetTx*> mapSorted;
    // Sort pending  transactions based on their initial  insertion order
    for (std::pair<const uint256, CWaetTx>& item : mapWaet) {
        const uint256& wtxid = item.first;
        CWaetTx& wtx = item.second;
        assert(wtx.GetHash() == wtxid);
        int nDepth = GetTxDepthInMainChain(wtx);
        if (!wtx.IsCoinBase() && (nDepth == 0 && !wtx.isAbandoned())) {
            mapSorted.insert(std::make_pair(wtx.nOrderPos, &wtx));
        }
    }
    // Try to add  transactions to memory pool
    for (const std::pair<const int64_t, CWaetTx*>& item : mapSorted) {
        CWaetTx& wtx = *(item.second);
        std::string unused_err_string;
        SubmitTxMemoryPoolAndRelay(wtx, unused_err_string, false);
    }
}
bool CWaet::SubmitTxMemoryPoolAndRelay(CWaetTx& wtx, std::string& err_string, bool relay) const
{
    // Can't relay if  is not broadcasting
    if (!GetBroadcastTransactions()) return false;
    // Don't relay abandoned transactions
    if (wtx.isAbandoned()) return false;
    // Don't try to submit coinbase transactions. These would fail anyway but would
    // cause log spam.
    if (wtx.IsCoinBase()) return false;
    // Don't try to submit conflicted or confirmed transactions.
    if (GetTxDepthInMainChain(wtx) != 0) return false;