diff options
| author | Raghavendra G <raghavendra@gluster.com> | 2009-08-23 22:37:26 +0000 | 
|---|---|---|
| committer | Anand V. Avati <avati@dev.gluster.com> | 2009-09-08 01:43:08 -0700 | 
| commit | ef073ee5430e1f3af3bd580dd99a72352889756b (patch) | |
| tree | 497946d5eca316587f8ebfc45c2e630f3e27a330 | |
| parent | 6bf11bf0dee3d3e70536a96cb8f8a4b01c26b445 (diff) | |
performance/stat-prefetch: minor bug-fixes.
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 221 (stat prefetch implementation)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
| -rw-r--r-- | xlators/performance/stat-prefetch/src/stat-prefetch.c | 18 | 
1 files changed, 9 insertions, 9 deletions
diff --git a/xlators/performance/stat-prefetch/src/stat-prefetch.c b/xlators/performance/stat-prefetch/src/stat-prefetch.c index 4a25c8e45..73dad13d6 100644 --- a/xlators/performance/stat-prefetch/src/stat-prefetch.c +++ b/xlators/performance/stat-prefetch/src/stat-prefetch.c @@ -41,8 +41,10 @@ sp_cache_init (void)  void  sp_local_free (sp_local_t *local)  { -        loc_wipe (&local->loc); -        FREE (local); +        if (local) { +                loc_wipe (&local->loc); +                FREE (local); +        }  } @@ -51,7 +53,6 @@ sp_cache_remove_entry (sp_cache_t *cache, char *name, char remove_all)  {          int32_t      ret   = -1;          gf_dirent_t *entry = NULL, *tmp = NULL; -        char         found = 0;          if ((cache == NULL) || ((name == NULL) && !remove_all)) {                  goto out; @@ -63,7 +64,7 @@ sp_cache_remove_entry (sp_cache_t *cache, char *name, char remove_all)                                            list) {                          if (remove_all || (!strcmp (name, entry->d_name))) {                                  list_del_init (&entry->list); -                                found = 1; +                                FREE (entry);                                  ret = 0;                                  if (!remove_all) { @@ -74,9 +75,6 @@ sp_cache_remove_entry (sp_cache_t *cache, char *name, char remove_all)          }          UNLOCK (&cache->lock); -        if (found) { -                FREE (entry); -        }  out:          return ret;      } @@ -461,6 +459,8 @@ sp_get_ancestors (char *path, char **parent, char **grand_parent)                          break;                  }          } + +        ret = 0;  out:          return ret;   } @@ -525,11 +525,11 @@ sp_lookup (call_frame_t *frame, xlator_t *this, loc_t *loc, dict_t *xattr_req)          call_frame_t *wind_frame = NULL;          char          lookup_behind = 0; -        if ((loc == NULL) || (loc->parent == NULL) || (loc->name == NULL)) { +        if (loc == NULL) {                  goto unwind;          } -        if (xattr_req) { +        if (xattr_req || (loc->parent == NULL) || (loc->name == NULL)) {                  goto wind;          }  | 
