|
From: <and...@us...> - 2006-04-16 18:07:03
|
Revision: 1272 Author: andreradke Date: 2006-04-16 11:06:52 -0700 (Sun, 16 Apr 2006) ViewCVS: http://svn.sourceforge.net/frontierkernel/?rev=1272&view=rev Log Message: ----------- For Mac Intel build, swap byte-order of integers read from our custom 'EFP#' resources in loadfunctionprocessor. Modified Paths: -------------- Frontier/trunk/Common/source/langstartup.c Modified: Frontier/trunk/Common/source/langstartup.c =================================================================== --- Frontier/trunk/Common/source/langstartup.c 2006-04-16 17:43:49 UTC (rev 1271) +++ Frontier/trunk/Common/source/langstartup.c 2006-04-16 18:06:52 UTC (rev 1272) @@ -42,6 +42,7 @@ #include "resources.h" #include "WinSockNetEvents.h" #include "sysshellcall.h" /* 2006-03-09 aradke: unixshellcall moved from CallMachOFramework.h */ +#include "byteorder.h" /* 2006-04-16 aradke: swap byte-order in loadfunctionprocessor */ #define str_isPike BIGSTRING ("\x06" "isPike") @@ -155,6 +156,8 @@ '040 instruction cache bug in Think C's run-time implementation of same, it's time to create the kernel tables directly from resources. that's what this routine does. + + 2006-04-16 aradke: swap byte-order on Intel Macs */ bigstring bsname; @@ -182,6 +185,8 @@ if (!loadfromhandle (hefps, &ix, 2, &ctefps)) return (false); + reztomemshort (ctefps); + while (--ctefps >= 0) { copyrezstring (BIGSTRING (*hefps + ix), bsname); @@ -191,12 +196,16 @@ if (!loadfromhandle (hefps, &ix, 2, &flwindow)) return (false); + reztomemshort (flwindow); + if (!newfunctionprocessor (bsname, valuecallback, (boolean) flwindow, &htable)) return (false); if (!loadfromhandle (hefps, &ix, 2, &ctverbs)) return (false); + reztomemshort (ctverbs); + pushhashtable (htable); while (--ctverbs >= 0 && fl) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |