Browse Source

renderer: fix desktop capture api not responding different subsequest calls

deepak1556 9 years ago
parent
commit
d64e3784f4
2 changed files with 12 additions and 1 deletions
  1. 0 1
      atom/browser/api/atom_api_desktop_capturer.cc
  2. 12 0
      spec/api-desktop-capturer-spec.js

+ 0 - 1
atom/browser/api/atom_api_desktop_capturer.cc

@@ -89,7 +89,6 @@ void DesktopCapturer::OnSourceThumbnailChanged(int index) {
 
 bool DesktopCapturer::OnRefreshFinished() {
   Emit("finished", media_list_->GetSources());
-  media_list_.reset();
   return false;
 }
 

+ 12 - 0
spec/api-desktop-capturer-spec.js

@@ -24,4 +24,16 @@ describe('desktopCapturer', function () {
     desktopCapturer.getSources({types: ['window', 'screen']}, callback)
     desktopCapturer.getSources({types: ['window', 'screen']}, callback)
   })
+
+  it('responds to subsequest calls of different options', function (done) {
+    var callCount = 0
+    var callback = function (error, sources) {
+      callCount++
+      assert.equal(error, null)
+      if (callCount === 2) done()
+    }
+
+    desktopCapturer.getSources({types: ['window']}, callback)
+    desktopCapturer.getSources({types: ['screen']}, callback)
+  })
 })