void nsSplittableFrame::DumpBaseRegressionData(nsPresContext* aPresContext, FILE* out, PRInt32 aIndent) { nsFrame::DumpBaseRegressionData(aPresContext, out, aIndent); if (nsnull != mNextContinuation) { IndentBy(out, aIndent); fprintf(out, "<next-continuation va=\"%ld\"/>\n", PRUptrdiff(mNextContinuation)); } if (nsnull != mPrevContinuation) { IndentBy(out, aIndent); fprintf(out, "<prev-continuation va=\"%ld\"/>\n", PRUptrdiff(mPrevContinuation)); } }
NS_IMETHODIMP nsBinaryOutputStream::WriteWStringZ(const PRUnichar* aString) { PRUint32 length, byteCount; nsresult rv; length = nsCRT::strlen(aString); rv = Write32(length); if (NS_FAILED(rv)) return rv; if (length == 0) return NS_OK; byteCount = length * sizeof(PRUnichar); #ifdef IS_BIG_ENDIAN rv = WriteBytes(reinterpret_cast<const char*>(aString), byteCount); #else // XXX use WriteSegments here to avoid copy! PRUnichar *copy, temp[64]; if (length <= 64) { copy = temp; } else { copy = reinterpret_cast<PRUnichar*>(nsMemory::Alloc(byteCount)); if (!copy) return NS_ERROR_OUT_OF_MEMORY; } NS_ASSERTION((PRUptrdiff(aString) & 0x1) == 0, "aString not properly aligned"); for (PRUint32 i = 0; i < length; i++) copy[i] = NS_SWAP16(aString[i]); rv = WriteBytes(reinterpret_cast<const char*>(copy), byteCount); if (copy != temp) nsMemory::Free(copy); #endif return rv; }