зеркало из https://github.com/mozilla/pjs.git
Bug 508128 - Ensure input stream lifetime is not cut short by a GC. r=waldo a=test-only
--HG-- extra : rebase_source : 063ab6d672ebc597297eda18076b0164927bc605
This commit is contained in:
Родитель
ee2cd851f2
Коммит
826db8c56c
|
@ -318,6 +318,7 @@ function runHttpTests(testArray, done)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
listener._channel = ch;
|
||||||
ch.asyncOpen(listener, null);
|
ch.asyncOpen(listener, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -327,11 +328,14 @@ function runHttpTests(testArray, done)
|
||||||
/** Stream listener for the channels. */
|
/** Stream listener for the channels. */
|
||||||
var listener =
|
var listener =
|
||||||
{
|
{
|
||||||
|
/** Current channel being observed by this. */
|
||||||
|
_channel: null,
|
||||||
/** Array of bytes of data in body of response. */
|
/** Array of bytes of data in body of response. */
|
||||||
_data: [],
|
_data: [],
|
||||||
|
|
||||||
onStartRequest: function(request, cx)
|
onStartRequest: function(request, cx)
|
||||||
{
|
{
|
||||||
|
do_check_true(request === this._channel);
|
||||||
var ch = request.QueryInterface(Ci.nsIHttpChannel)
|
var ch = request.QueryInterface(Ci.nsIHttpChannel)
|
||||||
.QueryInterface(Ci.nsIHttpChannelInternal);
|
.QueryInterface(Ci.nsIHttpChannelInternal);
|
||||||
|
|
||||||
|
@ -360,6 +364,8 @@ function runHttpTests(testArray, done)
|
||||||
},
|
},
|
||||||
onStopRequest: function(request, cx, status)
|
onStopRequest: function(request, cx, status)
|
||||||
{
|
{
|
||||||
|
this._channel = null;
|
||||||
|
|
||||||
var ch = request.QueryInterface(Ci.nsIHttpChannel)
|
var ch = request.QueryInterface(Ci.nsIHttpChannel)
|
||||||
.QueryInterface(Ci.nsIHttpChannelInternal);
|
.QueryInterface(Ci.nsIHttpChannelInternal);
|
||||||
|
|
||||||
|
@ -491,6 +497,7 @@ function runRawTests(testArray, done)
|
||||||
|
|
||||||
function waitForMoreInput(stream)
|
function waitForMoreInput(stream)
|
||||||
{
|
{
|
||||||
|
reader.stream = stream;
|
||||||
stream = stream.QueryInterface(Ci.nsIAsyncInputStream);
|
stream = stream.QueryInterface(Ci.nsIAsyncInputStream);
|
||||||
stream.asyncWait(reader, 0, 0, currentThread);
|
stream.asyncWait(reader, 0, 0, currentThread);
|
||||||
}
|
}
|
||||||
|
@ -522,6 +529,7 @@ function runRawTests(testArray, done)
|
||||||
{
|
{
|
||||||
onInputStreamReady: function(stream)
|
onInputStreamReady: function(stream)
|
||||||
{
|
{
|
||||||
|
do_check_true(stream === this.stream);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var bis = new BinaryInputStream(stream);
|
var bis = new BinaryInputStream(stream);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче