[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [16146] trunk/blender/source/blender/ blenloader: Win64 commit: first little commit to test how it compiles on other plattforms - I' ll then commit the other changes if all is fine :)

Daniel Genrich daniel.genrich at gmx.net
Sun Aug 17 18:36:38 CEST 2008


Revision: 16146
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16146
Author:   genscher
Date:     2008-08-17 18:36:37 +0200 (Sun, 17 Aug 2008)

Log Message:
-----------
Win64 commit: first little commit to test how it compiles on other plattforms - I'll then commit the other changes if all is fine :)

Modified Paths:
--------------
    trunk/blender/source/blender/blenloader/BLO_sys_types.h
    trunk/blender/source/blender/blenloader/intern/genfile.c
    trunk/blender/source/blender/blenloader/intern/readblenentry.c
    trunk/blender/source/blender/blenloader/intern/readfile.c

Modified: trunk/blender/source/blender/blenloader/BLO_sys_types.h
===================================================================
--- trunk/blender/source/blender/blenloader/BLO_sys_types.h	2008-08-17 10:10:25 UTC (rev 16145)
+++ trunk/blender/source/blender/blenloader/BLO_sys_types.h	2008-08-17 16:36:37 UTC (rev 16146)
@@ -64,6 +64,14 @@
 typedef unsigned __int32 uint32_t;
 typedef unsigned __int64 uint64_t;
 
+#ifdef _WIN64
+typedef __int64 intptr_t;
+typedef unsigned __int64 uintptr_t;
+#else
+typedef long intptr_t;
+typedef unsigned long uintptr_t;
+#endif
+
 #elif defined(__linux__)
 
 	/* Linux-i386, Linux-Alpha, Linux-ppc */

Modified: trunk/blender/source/blender/blenloader/intern/genfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/genfile.c	2008-08-17 10:10:25 UTC (rev 16145)
+++ trunk/blender/source/blender/blenloader/intern/genfile.c	2008-08-17 16:36:37 UTC (rev 16146)
@@ -58,6 +58,8 @@
 
 #include "genfile.h"
 
+#include "BLO_sys_types.h" // for intptr_t support
+
 /* gcc 4.1 on mingw was complaining that __int64 was alredy defined
 actually is saw the line below as typedef long long long long... 
 Anyhow, since its alredy defined, its safe to do an ifndef here- Cambpell*/
@@ -315,7 +317,7 @@
 /* in sdna->data the data, now we convert that to something understandable */
 {
 	int *data, *verg;
-	long nr;
+	intptr_t nr;
 	short *sp;
 	char str[8], *cp;
 	
@@ -351,7 +353,7 @@
 			cp++;
 			nr++;
 		}
-		nr= (long)cp;		/* prevent BUS error */
+		nr= (intptr_t)cp;		/* prevent BUS error */
 		nr= (nr+3) & ~3;
 		cp= (char *)nr;
 		
@@ -389,7 +391,7 @@
 			cp++;
 			nr++;
 		}
-		nr= (long)cp;		/* prevent BUS error */
+		nr= (intptr_t)cp;		/* prevent BUS error */
 		nr= (nr+3) & ~3;
 		cp= (char *)nr;
 		
@@ -1098,7 +1100,7 @@
 	int SDNAnr= dna_findstruct_nr(sdna, stype);
 	short *spo= sdna->structs[SDNAnr];
 	char *cp= find_elem(sdna, vartype, name, spo, NULL, NULL);
-	return (int)((long)cp);
+	return (int)((intptr_t)cp);
 }
 
 

Modified: trunk/blender/source/blender/blenloader/intern/readblenentry.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readblenentry.c	2008-08-17 10:10:25 UTC (rev 16145)
+++ trunk/blender/source/blender/blenloader/intern/readblenentry.c	2008-08-17 16:36:37 UTC (rev 16146)
@@ -63,6 +63,8 @@
 
 #include "BLO_readblenfile.h"
 
+#include "BLO_sys_types.h" // needed for intptr_t
+
 	/**
 	 * IDType stuff, I plan to move this
 	 * out into its own file + prefix, and
@@ -193,7 +195,7 @@
 			buf[2]= buf[2]?buf[2]:' ';
 			buf[3]= buf[3]?buf[3]:' ';
 			
-			fprintf(fp, "['%.4s', '%s', %d, %ld ], \n", buf, name, bhead->nr, (long)bhead->len+sizeof(BHead));
+			fprintf(fp, "['%.4s', '%s', %d, %ld ], \n", buf, name, bhead->nr, (intptr_t)bhead->len+sizeof(BHead));
 		}
 	}
 	fprintf(fp, "]\n");

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2008-08-17 10:10:25 UTC (rev 16145)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2008-08-17 16:36:37 UTC (rev 16146)
@@ -3593,9 +3593,9 @@
 		{
 			Sequence temp;
 			char *poin;
-			long offset;
+			intptr_t offset;
 			
-			offset= ((long)&(temp.seqbase)) - ((long)&temp);
+			offset= ((intptr_t)&(temp.seqbase)) - ((intptr_t)&temp);
 			
 			/* root pointer */
 			if(ed->seqbasep == old_seqbasep) {
@@ -4094,7 +4094,7 @@
 	while(se) {
 		se->v1= newdataadr(fd, se->v1);
 		se->v2= newdataadr(fd, se->v2);
-		if( (long)se->v1 > (long)se->v2) {
+		if( (intptr_t)se->v1 > (intptr_t)se->v2) {
 			sv= se->v1;
 			se->v1= se->v2;
 			se->v2= sv;





More information about the Bf-blender-cvs mailing list