From: Marco Costalba Date: Mon, 15 Jun 2009 21:45:45 GMT Subject: Re: [PATCH QGit RFC] Fix "Save patch..." on a commit range Message-ID: In-Reply-To: On Mon, Jun 15, 2009 at 22:25, Marco Costalba wrote: > > This is really strange ! > Ok. This is a quick test that perhaps you could do. Git::formatPatch() get the list of selected revisions already ordered by its caller, MainImpl::ActMailFormatPatch_activated() in mainimpl.cpp, in this function the selected items are retrieved calling ListView::getSelectedItems() in listview.cpp There, finally, there is the call to the native Qt function that collects the selected rows, QItemSelectionModel::selectedRows() The returned list is takes as is by QGit and nevere reordered or touched, so the order of the revisions belong directly on how QItemSelectionModel::selectedRows() returns the rows. Now the published windows version (and also teh Linux one) is compiled against Qt4.3.3, while you are using Qt4.4.1 I have checked in the Qt documentation and I didn't found any point where the order of the returned rows is specified, I know in Qt4.3.3 is from the top toward the bottom of the list, but perhaps in Qt4.4.1 it has been changed. So you could check, in ListView::getSelectedItems() how the rows are returned.