rem: if(item.@ask == 'subscribe') watchForSubscriptionApproval(item);  
context: function receivedRoster(iq) {    function watchForSubscriptionApproval(item) {        var listener = channel.on({            event     : 'presence',            direction : 'in',            stanza    : function(s) {                    return (s.@type == 'subscribed' &&                            s.@from == item.@jid);                }},            function(presence) {                channel.forget(listener);                receivedSubscriptionApproval(presence);            });    }    for each(var item in iq.stanza..ns_roster::item) {        if(item.@ask == 'subscribe')            watchForSubscriptionApproval(item);        contactChangedRelationship(            iq.session.name,            item.@jid,            item.@subscription,            item.@name.toString());    }
meta: 1705	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/1705/833837aae11242cdf43b67f41fa60b27948f2eed/contacts.js/buggy/chrome/content/contacts.js