On Wed, 19 Jan 2011 10:08:59 -0600 Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx> wrote: > >> @@ -158,19 +162,23 @@ cifs_from_ucs2(char *to, const __le16 *from, int tolen, int fromlen, > >> */ > >> safelen = tolen - (NLS_MAX_CHARSET_SIZE + nullsize); > >> > >> - for (i = 0; i < fromwords && from[i]; i++) { > >> + for (i = 0; i < fromwords; i++) { > >> + ftmp = get_unaligned_le16(&from[i]); > >> + if (ftmp == 0) > >> + break; > >> + > > > > Can the contents of from[i] be 0 so ftmp is 0 but we did > > not want to break out until fromwords? > > > > Basically, why_does/what_it_means get_unaligned_le16() > returning 0 warrants breaking out of the loop! > That means that we hit the NULL terminator in the "from" string (two adjacent zero bytes). So, we absolutely want to break out there. -- Jeff Layton <jlayton@xxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html