projects
/
project
/
libubox.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add blob_buf_free
[project/libubox.git]
/
blob.c
diff --git
a/blob.c
b/blob.c
index
cafd74c
..
3929ad3
100644
(file)
--- a/
blob.c
+++ b/
blob.c
@@
-80,6
+80,14
@@
blob_buf_init(struct blob_buf *buf, int id)
return 0;
}
return 0;
}
+void
+blob_buf_free(struct blob_buf *buf)
+{
+ free(buf->buf);
+ buf->buf = NULL;
+ buf->buflen = 0;
+}
+
struct blob_attr *
blob_new(struct blob_buf *buf, int id, int payload)
{
struct blob_attr *
blob_new(struct blob_buf *buf, int id, int payload)
{
@@
-132,9
+140,9
@@
static const int blob_type_minlen[BLOB_ATTR_LAST] = {
};
bool
};
bool
-blob_check_type(void *ptr, int len, int type)
+blob_check_type(
const
void *ptr, int len, int type)
{
{
- char *data = ptr;
+ c
onst c
har *data = ptr;
if (type >= BLOB_ATTR_LAST)
return false;
if (type >= BLOB_ATTR_LAST)
return false;
@@
-147,7
+155,7
@@
blob_check_type(void *ptr, int len, int type)
return false;
}
return false;
}
- if (type == BLOB_ATTR_STRING && data[len] != 0)
+ if (type == BLOB_ATTR_STRING && data[len
- 1
] != 0)
return false;
return true;
return false;
return true;