aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/platform/x86/hp/hp-bioscfg/bioscfg.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c
index b0a94640ff6f..32d9c36ca553 100644
--- a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c
+++ b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c
@@ -94,12 +94,15 @@ int hp_get_string_from_buffer(u8 **buffer, u32 *buffer_size, char *dst, u32 dst_
utf16s_to_utf8s(src, src_size, UTF16_HOST_ENDIAN, dst, conv_dst_size);
dst[conv_dst_size] = 0;
- for (i = 0; i < size && i < conv_dst_size; i++) {
+ for (i = 0; i < conv_dst_size; i++) {
if (*src == '\\' ||
*src == '\r' ||
*src == '\n' ||
- *src == '\t')
+ *src == '\t') {
dst[i++] = '\\';
+ if (i == conv_dst_size)
+ break;
+ }
if (*src == '\r')
dst[i] = 'r';