diff options
Diffstat (limited to 'libglusterfs')
| -rw-r--r-- | libglusterfs/src/dict.c | 31 | 
1 files changed, 8 insertions, 23 deletions
diff --git a/libglusterfs/src/dict.c b/libglusterfs/src/dict.c index 57be4e76d63..b69f0e79a47 100644 --- a/libglusterfs/src/dict.c +++ b/libglusterfs/src/dict.c @@ -1018,18 +1018,8 @@ str_to_data (char *value)                                    LG_MSG_INVALID_ARG, "value is NULL");                  return NULL;          } -        data_t *data = get_new_data (); - -        if (!data) { -                return NULL; -        } -        data->len = strlen (value) + 1; -        data->data_type = GF_DATA_TYPE_STR; - -        data->data = value; -        data->is_static = 1; -        return data; +        return strn_to_data(value, strlen (value));  }  data_t * @@ -1127,12 +1117,12 @@ data_to_int64 (data_t *data)  {          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_INT, "null", -1); -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0'; +          return (int64_t) strtoull (str, NULL, 0);  } @@ -1141,12 +1131,11 @@ data_to_int32 (data_t *data)  {          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_INT, "null", -1); -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0';          return strtoul (str, NULL, 0);  } @@ -1157,12 +1146,11 @@ data_to_int16 (data_t *data)          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_INT, "null", -1);          int16_t value = 0; -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0';          errno = 0;          value = strtol (str, NULL, 0); @@ -1212,12 +1200,11 @@ data_to_uint64 (data_t *data)  {          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_UINT, "null", -1); -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0';          return strtoll (str, NULL, 0);  } @@ -1227,12 +1214,11 @@ data_to_uint32 (data_t *data)  {          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_UINT, "null", -1); -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0';          return strtol (str, NULL, 0);  } @@ -1243,12 +1229,11 @@ data_to_uint16 (data_t *data)          VALIDATE_DATA_AND_LOG(data, GF_DATA_TYPE_UINT, "null", -1);  	uint16_t value = 0; -        char *str = alloca (data->len + 1); +        char *str = alloca (data->len);          if (!str)                  return -1;          memcpy (str, data->data, data->len); -        str[data->len] = '\0';  	errno = 0;  	value = strtol (str, NULL, 0);  | 
