summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVicent Martí <vicent@github.com>2013-01-05 18:52:09 -0800
committerVicent Martí <vicent@github.com>2013-01-05 18:52:09 -0800
commitf9b4adbe54de57431d56e0877325383d489e5196 (patch)
tree31f8fe78d1f215cd3ce34b3a1e2adaf79daf113b
parentd74b1bc5292a438d68d802082825cbf3a6661074 (diff)
parentf9b55bcb5f9fd8c41c74d4be58ebaad13aa9b7f3 (diff)
downloadlibgit2-f9b4adbe54de57431d56e0877325383d489e5196.tar.gz
Merge pull request #1194 from libgit2/dont-clobber-errors
git_mwindow_file_deregister() shouldn't return errors
-rw-r--r--src/mwindow.c13
-rw-r--r--src/mwindow.h2
2 files changed, 5 insertions, 10 deletions
diff --git a/src/mwindow.c b/src/mwindow.c
index ee693e4a0..64eba01b9 100644
--- a/src/mwindow.c
+++ b/src/mwindow.c
@@ -293,28 +293,23 @@ int git_mwindow_file_register(git_mwindow_file *mwf)
return ret;
}
-int git_mwindow_file_deregister(git_mwindow_file *mwf)
+void git_mwindow_file_deregister(git_mwindow_file *mwf)
{
git_mwindow_ctl *ctl = &mem_ctl;
git_mwindow_file *cur;
unsigned int i;
- if (git_mutex_lock(&git__mwindow_mutex)) {
- giterr_set(GITERR_THREAD, "unable to lock mwindow mutex");
- return -1;
- }
+ if (git_mutex_lock(&git__mwindow_mutex))
+ return;
git_vector_foreach(&ctl->windowfiles, i, cur) {
if (cur == mwf) {
git_vector_remove(&ctl->windowfiles, i);
git_mutex_unlock(&git__mwindow_mutex);
- return 0;
+ return;
}
}
git_mutex_unlock(&git__mwindow_mutex);
-
- giterr_set(GITERR_ODB, "Failed to find the memory window file to deregister");
- return -1;
}
void git_mwindow_close(git_mwindow **window)
diff --git a/src/mwindow.h b/src/mwindow.h
index c5aeaf77b..dc58a8605 100644
--- a/src/mwindow.h
+++ b/src/mwindow.h
@@ -39,7 +39,7 @@ int git_mwindow_contains(git_mwindow *win, git_off_t offset);
void git_mwindow_free_all(git_mwindow_file *mwf);
unsigned char *git_mwindow_open(git_mwindow_file *mwf, git_mwindow **cursor, git_off_t offset, size_t extra, unsigned int *left);
int git_mwindow_file_register(git_mwindow_file *mwf);
-int git_mwindow_file_deregister(git_mwindow_file *mwf);
+void git_mwindow_file_deregister(git_mwindow_file *mwf);
void git_mwindow_close(git_mwindow **w_cursor);
#endif