From d35d6326cb00fcbb19b41599bdff7faf5d79225e Mon Sep 17 00:00:00 2001 From: Nils Philippsen Date: Tue, 29 Oct 2013 14:14:18 +0100 Subject: [PATCH] pixmap: omitting curly braces considered harmful The break being outside of the else block effectively made an if clause out of the while loop. This caused long hostnames to not be shortened sufficiently which subsequentely made strcpy() write beyond buffer boundaries. --- backend/pixma_bjnp.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/backend/pixma_bjnp.c b/backend/pixma_bjnp.c index 3046e9de3..a1730ad57 100644 --- a/backend/pixma_bjnp.c +++ b/backend/pixma_bjnp.c @@ -364,11 +364,13 @@ determine_scanner_serial (const char *hostname, const char * mac_address, char * /* if this is a FQDN, not an ip-address, remove domain part of the name */ if ((dot = strchr (copy, '.')) != NULL) { - *dot = '\0'; + *dot = '\0'; } else - strcpy(copy, mac_address); - break; + { + strcpy(copy, mac_address); + break; + } } strcpy( serial, copy ); return serial;