File reiserfs-strict-aliasing.diff of Package libreiserfs.23572

diff -uNrp progsreiserfs-0.3.0.5.orig/include/reiserfs/key.h progsreiserfs-0.3.0.5/include/reiserfs/key.h
--- progsreiserfs-0.3.0.5.orig/include/reiserfs/key.h	2004-04-18 18:05:47.000000000 +0000
+++ progsreiserfs-0.3.0.5/include/reiserfs/key.h	2005-12-19 15:28:52.000000000 +0000
@@ -48,6 +48,7 @@ struct key {
 	union {
 		struct offset_v1 k_offset_v1;
 		struct offset_v2 k_offset_v2;
+		uint64_t k_offset_val;
 	} __attribute__ ((__packed__)) u;
     
 } __attribute__ ((__packed__));
diff -uNrp progsreiserfs-0.3.0.5.orig/libreiserfs/bitmap.c progsreiserfs-0.3.0.5/libreiserfs/bitmap.c
--- progsreiserfs-0.3.0.5.orig/libreiserfs/bitmap.c	2004-04-18 17:40:06.000000000 +0000
+++ progsreiserfs-0.3.0.5/libreiserfs/bitmap.c	2005-12-19 15:32:54.000000000 +0000
@@ -357,7 +357,7 @@ int reiserfs_bm_resize(reiserfs_bitmap_t
 	if (bm_size - bm->bm_size == 0)
 		return 1;
 
-	if (!libreiserfs_realloc((void **)&bm->bm_map, bm_size))
+	if (!libreiserfs_realloc(&bm->bm_map, bm_size))
 		return 0;
 	
 	if ((chunk = bm_size - bm->bm_size) > 0)
diff -uNrp progsreiserfs-0.3.0.5.orig/libreiserfs/block.c progsreiserfs-0.3.0.5/libreiserfs/block.c
--- progsreiserfs-0.3.0.5.orig/libreiserfs/block.c	2004-04-18 15:52:19.000000000 +0000
+++ progsreiserfs-0.3.0.5/libreiserfs/block.c	2005-12-19 15:33:00.000000000 +0000
@@ -73,7 +73,7 @@ reiserfs_block_t *reiserfs_block_alloc_w
 reiserfs_block_t *reiserfs_block_realloc(reiserfs_block_t *block, blk_t blk) {
 	ASSERT(block != NULL, return NULL);
 
-	if (!libreiserfs_realloc((void **)&block->data,
+	if (!libreiserfs_realloc(&block->data,
 				 dal_block_size(block->dal)))
 	{
 		return NULL;
diff -uNrp progsreiserfs-0.3.0.5.orig/libreiserfs/key.c progsreiserfs-0.3.0.5/libreiserfs/key.c
--- progsreiserfs-0.3.0.5.orig/libreiserfs/key.c	2004-04-18 17:30:14.000000000 +0000
+++ progsreiserfs-0.3.0.5/libreiserfs/key.c	2005-12-19 15:32:40.000000000 +0000
@@ -64,7 +64,7 @@ uint32_t reiserfs_key_type2uniq(uint32_t
 uint64_t get_key_v2_offset(const struct key *key) {
 	uint64_t * p, tmp;
 
-	p = (uint64_t *)(&(key->u.k_offset_v2));
+	p = &(key->u.k_offset_val);
 	tmp = LE64_TO_CPU(*p);
 	tmp &= KEY_OFFSET_MASK;
 	tmp >>= 0;
@@ -74,7 +74,7 @@ uint64_t get_key_v2_offset(const struct 
 void set_key_v2_offset(struct key *key, uint64_t val) {
 	uint64_t * p, tmp;
 
-	p = (uint64_t *)(&(key->u.k_offset_v2));
+	p = &(key->u.k_offset_val);
 	tmp = LE64_TO_CPU(*p);
 	tmp &= ~KEY_OFFSET_MASK;
 	tmp |= (val << 0);
@@ -85,7 +85,7 @@ void set_key_v2_offset(struct key *key, 
 uint16_t get_key_v2_type(const struct key *key) {
 	uint64_t * p, tmp;
 
-	p = (uint64_t *)(&(key->u.k_offset_v2));
+	p = &(key->u.k_offset_val);
 	tmp = LE64_TO_CPU (*p);
 	tmp &= KEY_TYPE_MASK;
 	tmp >>= 60;
@@ -101,7 +101,7 @@ void set_key_v2_type(struct key *key, ui
 		return;    
 	}	
 
-	p = (uint64_t *)(&(key->u.k_offset_v2));
+	p = &(key->u.k_offset_val);
 	tmp = LE64_TO_CPU(*p);
 	tmp &= ~KEY_TYPE_MASK;
 	tmp |= (val << 60);
openSUSE Build Service is sponsored by