|  | @@ -37,6 +37,7 @@
 | 
	
		
			
				|  |  |   |
 | 
	
		
			
				|  |  |   ==================================================================== */
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +//jshint eqnull:true
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  define("amber/boot", [ 'require', './browser-compatibility' ], function (require) {
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -73,13 +74,14 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  				while (typeof b === "function") { b = new b(brikz, api, bak); }
 | 
	
		
			
				|  |  |  				if (b && !chk[key]) { chk[key]=true; order.push(b); }
 | 
	
		
			
				|  |  |  				if (b && !b[apiKey]) { b[apiKey] = mixin(api, {}); }
 | 
	
		
			
				|  |  | -				return brikz[key] = b;
 | 
	
		
			
				|  |  | +				brikz[key] = b;
 | 
	
		
			
				|  |  | +				return b;
 | 
	
		
			
				|  |  |  			};
 | 
	
		
			
				|  |  |  			Object.keys(brikz).forEach(function (key) { brikz.ensure(key); });
 | 
	
		
			
				|  |  |  			brikz.ensure = null;
 | 
	
		
			
				|  |  |  			mixin(oapi, mixin(null, api, api));
 | 
	
		
			
				|  |  |  			order.forEach(function(brik) { mixin(brik[apiKey] || {}, api); });
 | 
	
		
			
				|  |  | -			order.forEach(function(brik) { brik[initKey] && brik[initKey](); });
 | 
	
		
			
				|  |  | +			order.forEach(function(brik) { if (brik[initKey]) brik[initKey](); });
 | 
	
		
			
				|  |  |  			backup = mixin(brikz, {});
 | 
	
		
			
				|  |  |  		};
 | 
	
		
			
				|  |  |  	}
 | 
	
	
		
			
				|  | @@ -653,10 +655,10 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  		st.removeMethod = function(method, klass) {
 | 
	
		
			
				|  |  |  			if (klass !== method.methodClass) {
 | 
	
		
			
				|  |  |  				throw new Error(
 | 
	
		
			
				|  |  | -					"Refusing to remove method "
 | 
	
		
			
				|  |  | -						+ method.methodClass.className+">>"+method.selector
 | 
	
		
			
				|  |  | -						+ " from different class "
 | 
	
		
			
				|  |  | -						+ klass.className);
 | 
	
		
			
				|  |  | +						"Refusing to remove method " +
 | 
	
		
			
				|  |  | +						method.methodClass.className + ">>" + method.selector +
 | 
	
		
			
				|  |  | +						" from different class " +
 | 
	
		
			
				|  |  | +						klass.className);
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  			delete klass.fn.prototype[st.selector(method.selector)];
 | 
	
	
		
			
				|  | @@ -780,6 +782,7 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		/* Boolean assertion */
 | 
	
		
			
				|  |  |  		st.assert = function(shouldBeBoolean) {
 | 
	
		
			
				|  |  | +			// jshint -W041
 | 
	
		
			
				|  |  |  			if (undefined !== shouldBeBoolean && shouldBeBoolean.klass === globals.Boolean) {
 | 
	
		
			
				|  |  |  				return shouldBeBoolean == true;
 | 
	
		
			
				|  |  |  			} else {
 | 
	
	
		
			
				|  | @@ -958,7 +961,8 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  		};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		function pushContext(setup) {
 | 
	
		
			
				|  |  | -			return st.thisContext = new SmalltalkMethodContext(st.thisContext, setup);
 | 
	
		
			
				|  |  | +			var newContext = st.thisContext = new SmalltalkMethodContext(st.thisContext, setup);
 | 
	
		
			
				|  |  | +            return newContext;
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		function popContext(context) {
 | 
	
	
		
			
				|  | @@ -1092,14 +1096,14 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  				.replace(/_at/g, '@');
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        st.st2prop = function (stSelector) {
 | 
	
		
			
				|  |  | -            var colonPosition = stSelector.indexOf(':');
 | 
	
		
			
				|  |  | -            return colonPosition === -1 ? stSelector : stSelector.slice(0, colonPosition);
 | 
	
		
			
				|  |  | -        };
 | 
	
		
			
				|  |  | +		st.st2prop = function (stSelector) {
 | 
	
		
			
				|  |  | +			var colonPosition = stSelector.indexOf(':');
 | 
	
		
			
				|  |  | +			return colonPosition === -1 ? stSelector : stSelector.slice(0, colonPosition);
 | 
	
		
			
				|  |  | +		};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        // Backward-compatible names, deprecated.
 | 
	
		
			
				|  |  | -        st.selector = st.st2js;
 | 
	
		
			
				|  |  | -        st.convertSelector = st.js2st;
 | 
	
		
			
				|  |  | +		// Backward-compatible names, deprecated.
 | 
	
		
			
				|  |  | +		st.selector = st.st2js;
 | 
	
		
			
				|  |  | +		st.convertSelector = st.js2st;
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	/* Adds AMD and requirejs related methods to the smalltalk object */
 | 
	
	
		
			
				|  | @@ -1159,7 +1163,7 @@ define("amber/boot", [ 'require', './browser-compatibility' ], function (require
 | 
	
		
			
				|  |  |  		brikz.primitives = PrimitivesBrik;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		brikz.rebuild();
 | 
	
		
			
				|  |  | -	};
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	return { api: api, /*deprecated:*/vm: api, nil: brikz.root.nil, globals: globals, asReceiver: brikz.asReceiver.asReceiver };
 | 
	
		
			
				|  |  |  });
 |