rem: dump("print card\n"); try { addressbook.printCard(); } catch (ex) { dump("failed to print card\n"); } 
add: dump("print card\n");  var selectedItems = resultsTree.selectedItems; var numSelected = selectedItems.length;  if (numSelected == 0) { dump("AbPrintCard(): No card selected.\n"); return false; } var statusFeedback; statusFeedback = Components.classes["component: statusFeedback = statusFeedback.QueryInterface(Components.interfaces.nsIMsgStatusFeedback);  var selectionArray = new Array(numSelected);  var totalCard = 0; for(var i = 0; i < numSelected; i++) { var uri = selectedItems[i].getAttribute("id"); var cardResource = top.rdf.GetResource(uri); var card = cardResource.QueryInterface(Components.interfaces.nsIAbCard); if (card.printCardUrl.length) { selectionArray[totalCard++] = card.printCardUrl; dump("printCardUrl = " + card.printCardUrl + "\n"); } }  printEngineWindow = window.openDialog("chrome: "", "chrome,dialog=no,all", totalCard, selectionArray, statusFeedback);  return true; 
context: function AbPrintCard(){        dump("print card\n");        try {                addressbook.printCard();        }        catch (ex) {                dump("failed to print card\n");        }}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/5fee9025e8f31dd643d58bee38cd79da64420fec/addressbook.js/buggy/mailnews/addrbook/resources/content/addressbook.js