URI perpetuum mobile

In this simple application uri events are generated infinitely after once triggered by pressing the button - why ?
No explicit URI changes are posted (apart from the initial push).
It is a simplified extract from a larger application where I have problem with phantom uri events after replacing components.
The URIFragmentUtility is at the same level as replaced components. Can it be the reason ?

package com.example.urierror;

import java.util.Date;

import com.vaadin.Application;
import com.vaadin.ui.Button;
import com.vaadin.ui.UriFragmentUtility;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import com.vaadin.ui.Button.ClickEvent;
import com.vaadin.ui.UriFragmentUtility.FragmentChangedEvent;
import com.vaadin.ui.UriFragmentUtility.FragmentChangedListener;

public class UrierrorApplication extends Application 
	public void init() 
		AppWindow mainWindow = new AppWindow();

class AppWindow extends Window implements FragmentChangedListener 
	VerticalLayout layout1 = new VerticalLayout();
	VerticalLayout layout2 = new VerticalLayout();
	VerticalLayout layoutCurrent = null;
	Button button;
	UriFragmentUtility uriFragmentUtility;
	Integer i = 0;
	public AppWindow()
		uriFragmentUtility = new UriFragmentUtility();
		layoutCurrent = layout1;
		addComponent(button = new Button("0 uri events", new Button.ClickListener() {
			public void buttonClick(ClickEvent event) {
				uriFragmentUtility.setFragment("F" + (new Date()).getTime());
	public void fragmentChanged(FragmentChangedEvent source)
		button.setCaption(++i + " uri events");
		VerticalLayout layoutNew = (layoutCurrent == layout1 ? layout2 : layout1);
		replaceComponent(layoutCurrent, layoutNew);
		layoutCurrent = layoutNew;

Hi again,
Does anybody know if URI events should by generated implicitly as in this case - by simple component replacing - potentially interfering with explicit workflow based on URI fragments ?
Should I post the bug report or this is normal & expected behaviour ?

This looks strange. Which Vaadin version are you using? Is it really the replaceComponent() that triggers the behavior?

If this is reproducible with the current stable version, please
file a bug report
with the program to reproduce it.

I am using 6.7.9, also checked with 6.7.5 - same behaviour.
Yes, I think something with replaceComponent() may bo wrong…
I have filled the bug report: Ticket #8916