Index: trunk/xcache.c
===================================================================
--- trunk/xcache.c	(revision 832)
+++ trunk/xcache.c	(revision 840)
@@ -146,5 +146,5 @@
 	xc_entry_data_php_t *p;
 	for (p = php->cache->phps[php->hvalue]; p; p = p->next) {
-		if (memcmp(php->md5, p->md5, sizeof(php->md5)) == 0) {
+		if (memcmp(&php->md5, &p->md5, sizeof(php->md5)) == 0) {
 			p->hits ++;
 			return p;
@@ -170,5 +170,5 @@
 		xc_entry_data_php_t *p;
 		for (p = *pp; p; pp = &(p->next), p = p->next) {
-			if (memcmp(php->md5, p->md5, sizeof(php->md5)) == 0) {
+			if (memcmp(&php->md5, &p->md5, sizeof(php->md5)) == 0) {
 				/* unlink */
 				*pp = p->next;
@@ -1088,5 +1088,5 @@
 static inline xc_hash_value_t xc_php_hash_md5(xc_entry_data_php_t *php TSRMLS_DC) /* {{{ */
 {
-	return HASH_STR_S(php->md5, sizeof(php->md5));
+	return HASH_STR_S(&php->md5, sizeof(php->md5));
 }
 /* }}} */
@@ -1109,5 +1109,5 @@
 		PHP_MD5Update(&context, buf, n);
 	}
-	PHP_MD5Final((unsigned char *) php->md5, &context);
+	PHP_MD5Final((unsigned char *) php->md5.digest, &context);
 
 	php_stream_close(stream);
