Fixed issue #1: in some case, TraceListener.onStopRequest is not called

In onDataAvailable, it seems that sometime, request parameter is
a nsIRequest object, not a nsIChannel object.. We should query
the nsIChannel interface to avoid errors during the call
of originalListener. Don't tell me why. At least this fix works
for me.