diff --git a/matlab/dynare.m b/matlab/dynare.m
index 267d2d202b768baf2d06e07500137c5606350070..ad9382b8f55d8a9fd780f9ea929bf165493b09c2 100644
--- a/matlab/dynare.m
+++ b/matlab/dynare.m
@@ -51,9 +51,9 @@ change_path_flag = true;
 % Filter out some options.
 if nargin>1
     id = strfind(varargin,'nopathchange');
-    if ~isempty(id)
+    if ~all(cellfun(@isempty, id))
         change_path_flag = false;
-        varargin(id{1}) = [];
+        varargin(cellfun(@isempty, id) == 0) = [];
     end
 end