38 lines
1.8 KiB
Diff
38 lines
1.8 KiB
Diff
diff --git a/utils/cups-browsed.c b/utils/cups-browsed.c
|
|
index 826679f..93f21c3 100644
|
|
--- a/utils/cups-browsed.c
|
|
+++ b/utils/cups-browsed.c
|
|
@@ -1415,8 +1415,8 @@ void add_mimetype_attributes(char* cluster_name, ipp_t **merged_attributes)
|
|
for (q = (char *)cupsArrayFirst(list),i=0;
|
|
q;
|
|
q = (char *)cupsArrayNext(list),i++) {
|
|
- values[i]=malloc(sizeof(char)*strlen(q)+1);
|
|
- strncpy(values[i], q, sizeof(values[i]) - 1);
|
|
+ values[i]=malloc(sizeof(char) * (strlen(q) + 1));
|
|
+ snprintf(values[i], strlen(q) + 1, "%s", q);
|
|
}
|
|
ippAddStrings(*merged_attributes, IPP_TAG_PRINTER,IPP_TAG_MIMETYPE,
|
|
attributes[attr_no], num_value, NULL,
|
|
@@ -1487,8 +1487,8 @@ void add_tagzero_attributes(char* cluster_name, ipp_t **merged_attributes)
|
|
/* Transferring attributes value from cups Array to char* array*/
|
|
for (q = (char *)cupsArrayFirst(list), i = 0; q;
|
|
q = (char *)cupsArrayNext(list), i ++) {
|
|
- values[i] = malloc(sizeof(char) * strlen(q) + 1);
|
|
- strncpy(values[i], q, sizeof(values[i]) - 1);
|
|
+ values[i] = malloc(sizeof(char) * (strlen(q) + 1));
|
|
+ snprintf(values[i], strlen(q) + 1, "%s", q);
|
|
}
|
|
ippAddStrings(*merged_attributes, IPP_TAG_PRINTER,
|
|
IPP_TAG_KEYWORD, attributes[attr_no],
|
|
@@ -1558,8 +1558,8 @@ void add_keyword_attributes(char* cluster_name, ipp_t **merged_attributes)
|
|
for (q = (char *)cupsArrayFirst(list), i=0;
|
|
q;
|
|
q = (char *)cupsArrayNext(list), i ++) {
|
|
- values[i] = malloc(sizeof(char) * strlen(q) + 1);
|
|
- strncpy(values[i], q, sizeof(values[i]) - 1);
|
|
+ values[i] = malloc(sizeof(char) * (strlen(q) + 1));
|
|
+ snprintf(values[i], strlen(q) + 1, "%s", q);
|
|
}
|
|
ippAddStrings(*merged_attributes, IPP_TAG_PRINTER, IPP_TAG_KEYWORD,
|
|
attributes[attr_no], num_value, NULL,
|