Do not overwrite next cluster number in FAT table

Cluster numbers are keept packed: 1 cluster = 3 bytes.

Change-Id: Ie7f4220fdf1ea7d2389bb0eb9fa1ad6aea0ce19b
diff --git a/fatcache.c b/fatcache.c
index 429c982..4d1e1a6 100644
--- a/fatcache.c
+++ b/fatcache.c
@@ -105,7 +105,7 @@
 			*p++ = (u_char)(next >>8);
 			*p++ = (u_char)(next >> 16);
 			*p &= 0xf0;
-			*p = (next >> 24) & 0x0f;
+			*p |= (next >> 24) & 0x0f;
 			break;
 
 		case CLUST16_MASK: