 			{
 				// increase the recursion count while the function is running
 				entry.recursionCount++;
-				callback.apply(relevantContext || callback['this']);
+				callback.apply(relevantContext);
 				entry.recursionCount--;
 			}
 		}

			{
				var entry:CallbackEntry = _disposeCallbackEntries.shift() as CallbackEntry;
				if (entry.callback != null && !WeaveAPI.SessionManager.objectWasDisposed(entry.context))
					entry.callback.apply(entry.context || entry.callback['this']);
			}
		}
		

						if (_preCallback != null)
							_preCallback.apply(this, preCallbackParams);
						
						entry.callback.apply(entry.context);
						
						entry.recursionCount--; // decrease count because the callback finished.
					}
