Imported Debian patch 4.8.10-2
This commit is contained in:
41
debian/missing-sources/dojo/errors/create.js
vendored
Normal file
41
debian/missing-sources/dojo/errors/create.js
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
define(["../_base/lang"], function(lang){
|
||||
return function(name, ctor, base, props){
|
||||
base = base || Error;
|
||||
|
||||
var ErrorCtor = function(message){
|
||||
if(base === Error){
|
||||
if(Error.captureStackTrace){
|
||||
Error.captureStackTrace(this, ErrorCtor);
|
||||
}
|
||||
|
||||
// Error.call() operates on the returned error
|
||||
// object rather than operating on |this|
|
||||
var err = Error.call(this, message),
|
||||
prop;
|
||||
|
||||
// Copy own properties from err to |this|
|
||||
for(prop in err){
|
||||
if(err.hasOwnProperty(prop)){
|
||||
this[prop] = err[prop];
|
||||
}
|
||||
}
|
||||
|
||||
// messsage is non-enumerable in ES5
|
||||
this.message = message;
|
||||
// stack is non-enumerable in at least Firefox
|
||||
this.stack = err.stack;
|
||||
}else{
|
||||
base.apply(this, arguments);
|
||||
}
|
||||
if(ctor){
|
||||
ctor.apply(this, arguments);
|
||||
}
|
||||
};
|
||||
|
||||
ErrorCtor.prototype = lang.delegate(base.prototype, props);
|
||||
ErrorCtor.prototype.name = name;
|
||||
ErrorCtor.prototype.constructor = ErrorCtor;
|
||||
|
||||
return ErrorCtor;
|
||||
};
|
||||
});
|
||||
Reference in New Issue
Block a user