rem: BookmarksUtils.insertSelection("drag", selection, selTarget); 
add: BookmarksUtils.insertAndCheckSelection("drag", selection, selTarget); 
context:   onDrop: function (aEvent, aXferData, aDragSession)  {    var target = aEvent.target;    this.onDragRemoveFeedBack(target);    var selection = BookmarksUtils.getSelectionFromXferData(aDragSession);    var orientation = BookmarksMenu.getBTOrientation(aEvent);    var selTarget   = BookmarksMenu.getBTTarget(target, orientation);    const kDSIID      = Components.interfaces.nsIDragService;    const kCopyAction = kDSIID.DRAGDROP_ACTION_COPY + kDSIID.DRAGDROP_ACTION_LINK;    // hide the 'open in tab' menuseparator because bookmarks    // can be inserted after it if they are dropped after the last bookmark    // a more comprehensive fix would be in the menupopup template builder    var menuTarget = (target.localName == "toolbarbutton" ||                      target.localName == "menu")         &&                      orientation == BookmarksUtils.DROP_ON?                     target.lastChild:target.parentNode;    if (menuTarget.hasChildNodes() &&        menuTarget.lastChild.id == "openintabs-menuitem") {      menuTarget.removeChild(menuTarget.lastChild.previousSibling);    }    if (aDragSession.dragAction & kCopyAction)      BookmarksUtils.insertSelection("drag", selection, selTarget);    else      BookmarksUtils.moveSelection("drag", selection, selTarget);    // show again the menuseparator    if (menuTarget.hasChildNodes() &&        menuTarget.lastChild.id == "openintabs-menuitem") {      var element = document.createElementNS(XUL_NS, "menuseparator");      menuTarget.insertBefore(element, menuTarget.lastChild);    }  },
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8395/deb907dede6accfbec295282501589d13a5b1c23/bookmarksMenu.js/buggy/browser/components/bookmarks/content/bookmarksMenu.js