 			}
 
 			if(myStatus.isStartingDownload) {
+                this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "pause: End"));
 				return true;
 			} else if(myStatus.loadRequired()) {
 				if(time > 0) { // We do not want the stop() command, which does pause(0), causing a load operation.
+                    this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "pause: End"));
 					return load();
 				} else {
+                    this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "pause: End"));
 					return true; // Technically the pause(0) succeeded. ie., It did nothing, since nothing was required.
 				}
 			} else if(myStatus.isLoading || myStatus.isLoaded) {

					progressUpdates(true);
					// See onMetaDataHandler() for other condition, since duration is vital.

                    this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "netStatusHandler: NetStream.Play.Start end"));

					break;
				case "NetStream.Play.Stop":
					this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "NetStream.Play.Stop: getDuration() - getCurrentTime() = " + (getDuration() - getCurrentTime())));

					// Check if media is at the end (or close) otherwise this was due to download bandwidth stopping playback. ie., Download is not fast enough.
					if(Math.abs(getDuration() - getCurrentTime()) < 1000) { // Using 1000ms to be extra safe, testing found that for M4A files, playHead(99.9) caused a stuck state due to firing with up to 186ms left to play.
						endedEvent();
					}
					break;
				case "NetStream.Seek.InvalidTime":
					// Used for capturing invalid set times and clicks on the end of the progress bar.
					endedEvent();
					break;
				case "NetStream.Play.StreamNotFound":
					myStatus.error(); // Resets status except the src, and it sets srcError property.
					this.dispatchEvent(new JplayerEvent(JplayerEvent.JPLAYER_ERROR, myStatus));
					break;
				case "NetStream.SeekStart.Notify":
					myStatus.flashIsSeeking = true;
					break;
				case "NetStream.Seek.Notify":
					// A typical seek call involves 1) pausing the stream, 2) seeking, then 3) waiting for Flash to finish seeking. We're at step 3 now.
					// However, step 3 can be triggered when someone hits pause then seeks around. So, we need to keep track of that case.
					// myStatus.playAfterFlashIsSeeking is the flag that distinguishes this use case.
					if(myStatus.playAfterFlashIsSeeking){
						myStatus.playAfterFlashIsSeeking = false; // Unset the flag.
						myStatus.isPlaying = true; // Set immediately before playing. Could affects events.

			} else {
				this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "onMetaDataHandler: Already read (NO EFFECT)"));
			}
            this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "onMetaDataHandler: End"));
		}
	}
}
