removeListener
takes an argument. You need to name the listener function and then remove it by name:
function doStuff(request){
chrome.extension.onRequest.removeListener(doStuff);
other_function(request);
}
chrome.extension.onRequest.addListener(doStuff);
Or, more succinctly:
chrome.extension.onRequest.addListener(
function doStuff(request){
chrome.extension.onRequest.removeListener(doStuff);
other_function(request);
}
);