string IDL type behaves differently when used as return param and as [size_is(foo),retval]out

NEW
Unassigned

Status

()

Core
XPConnect
14 years ago
12 years ago

People

(Reporter: vlad, Unassigned)

Tracking

Trunk
x86
All
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

We have right now in nsIScriptableInputStream.idl:
  string read(in unsigned long aCount);
and in nsIBinaryInputStream.idl:
  void readBytes(in PRUint32 aLength, [size_is(aLength), retval] out string
aString);

both end up as "char **retval" in the C++ side, but xpconnect isn't stripping
the 8th bit for the readBytes case (as it does for all other "string"s, either
in or return value).

nsIBinaryInputStream isn't frozen, so if this behaviour were to be fixed, the
signature of readBytes could be changed to something that doesn't strip the 8th bit.
Assignee: dbradley → nobody
QA Contact: pschwartau → xpconnect
You need to log in before you can comment on or make changes to this bug.