@@ -2,23 +2,31 @@ var clone = require('stringify-clone');
22
33var debugId = 0
44
5- module . exports = exports = function ( request , log ) {
5+ module . exports = exports = function ( requestObj , log ) {
66 log = log || exports . log
77
8+ var request = requestObj
89 var proto
9- if ( request . Request ) {
10- proto = request . Request . prototype
11- } else if ( request . get && request . post ) {
10+
11+ if ( requestObj . Request ) {
12+ request = requestObj . defaults ( { } ) ;
13+ }
14+
15+ if ( request . get && request . post ) {
1216 // The object returned by request.defaults() doesn't include the
1317 // Request property, so do this horrible thing to get at it. Per
1418 // Wikipedia, port 4 is unassigned.
15- var req = request ( 'http://localhost:4' ) . on ( 'error' , function ( ) { } )
16- proto = req . constructor . prototype
19+ var Request = request ( 'http://localhost:4' ) . on ( 'error' , function ( ) { } )
20+
21+ request . Request = Object . assign ( { } , Request ) ;
22+ request . Request . prototype = Object . assign ( { } , Request . prototype ) ;
1723 } else {
1824 throw new Error (
1925 "Pass the object returned by require('request') to this function." )
2026 }
2127
28+ proto = request . Request . prototype
29+
2230 if ( ! proto . _initBeforeDebug ) {
2331 proto . _initBeforeDebug = proto . init
2432
@@ -83,6 +91,8 @@ module.exports = exports = function(request, log) {
8391 delete proto . _initBeforeDebug
8492 }
8593 }
94+
95+ return request ;
8696}
8797
8898exports . log = function ( type , data , r ) {
0 commit comments