Commit graph

1195 commits

Author SHA1 Message Date
historic_bruno
011cbb5725 Fixes OS X STL incompatibilities when building against later SDKs and targeting 10.5 (fixes stringstream build errors in these conditions)
This was SVN commit r14139.
2013-11-11 00:09:16 +00:00
Ykkrosh
d178f32698 Fix Unicode in JS print() on Linux
This was SVN commit r14129.
2013-11-10 16:13:40 +00:00
Ykkrosh
29e4b1a17c Update Android support
This was SVN commit r14068.
2013-11-02 23:05:38 +00:00
Ykkrosh
a4cd90ddfc Avoid non-ASCII characters in source code, since tools don't decode them consistently.
Fixes #2198.

This was SVN commit r14035.
2013-10-20 09:27:44 +00:00
historic_bruno
2a613f8236 Removes mostly useless video memory detection, fixes another crash with Nvidia Optimus on Windows, fixes #2145, #2138
This was SVN commit r13891.
2013-09-22 18:07:33 +00:00
stwf
b1bd61938e add file notification to Mac ticket 514, also change name of class FileInfo to CFileInfo to ease Mac development
This was SVN commit r13821.
2013-09-10 14:17:04 +00:00
janwas
c1dcbe4176 update TLB table
refs #2074

This was SVN commit r13741.
2013-08-23 06:42:48 +00:00
historic_bruno
0a0bd83cf0 Adds L4 cache detection for some new Haswell CPUs, fixes #2074
This was SVN commit r13736.
2013-08-21 23:18:35 +00:00
historic_bruno
f947fa6afe Fixes stack overflow in stack dump logic, by special-casing boost::unordered types, fixes #1813.
Adds INIT_HAVE_DISPLAY_ERROR init flag to correctly override
ah_display_error in Atlas (InitVfs was overriding it again), but don't
use it because it's ugly and broken, refs #1729

This was SVN commit r13724.
2013-08-20 21:07:42 +00:00
alpha123
93abbae435 Fix build issues on ARM. Patch by Josh. Fixes #2049.
This was SVN commit r13634.
2013-08-07 05:00:46 +00:00
historic_bruno
8aa016a884 Changes graphics card name detection on Windows to use OpenGL, as a workaround for certain WMI related crashes on Nvidia Optimus and netbook systems. Fixes #1952, #1575
This was SVN commit r13536.
2013-07-06 18:30:29 +00:00
historic_bruno
02b98f3acd Fixes build with x11 and SDL2
This was SVN commit r13485.
2013-06-17 01:43:57 +00:00
historic_bruno
d2b0d25457 Fixes macro redefinition of FACILITY_VISUALCPP in VC2012 (it's defined in winerror.h).
Removes obsolete hack for old Boost and VC2005 (broke VC2005 build with
modern Boost).

This was SVN commit r13433.
2013-05-28 01:14:41 +00:00
leper
3e8bdebc6d Add Clang detection and add BSD to the collected stats.
This was SVN commit r13111.
2013-01-23 16:01:17 +00:00
Ykkrosh
c037e3f78e Add detection of Win8 in wversion, to help stats collection
This was SVN commit r13100.
2013-01-21 20:32:07 +00:00
janwas
308db6627a fix synchronization of TimerState (refs #1729)
This was SVN commit r12908.
2012-12-01 06:33:30 +00:00
janwas
9001cba02c fix: remove unnecessary failure check concerning window class atom. fixes #1729
This was SVN commit r12906.
2012-12-01 02:34:19 +00:00
historic_bruno
5cff74f4e7 Replaces FAM file monitoring with inotify on Linux, based on patch by noKid. Fixes #1316, refs #1687.
Removes FAM dependency.

This was SVN commit r12726.
2012-10-02 00:03:14 +00:00
historic_bruno
e485fb9e2c Implements copy/paste for OS X using NSPasteboard including pre-10.6 API support. Fixes #1326
This was SVN commit r12464.
2012-08-18 19:47:55 +00:00
leper
637c09b204 Add support for OpenBSD. Fixes #1463.
Backport os_getversion from premake4.4-beta4 and extend it to support
POSIX-compilant systems.
Add some missing newlines at the end of file as these cause warnings on
OpenBSD.
Update the config paths.

This was SVN commit r11970.
2012-06-13 20:43:56 +00:00
historic_bruno
37a5bedb81 Adds partial support for Debian GNU/kFreeBSD, based on patch by vincent. Refs #1322.
This was SVN commit r11781.
2012-05-07 01:53:35 +00:00
historic_bruno
ffc89ee1af Adds some OS X availability macros to support 10.5 SDK. Not foolproof but good enough for now.
This was SVN commit r11757.
2012-05-05 03:18:22 +00:00
historic_bruno
b101f5ad01 Adds hardware cursors for Linux and OS X. Requires libxcursor on Linux. Fixes #748.
Adds explicit links to frameworks we need on OS X.

This was SVN commit r11596.
2012-04-21 07:53:53 +00:00
historic_bruno
0fda0019d1 Updates data paths on OS X and Windows. On OS X only write to locations inside ~/Library. On Windows make the distinction between local and roaming appdata, and use folder inside My Documents for user-created data. Fixes #1145.
Adds proper OS X app bundle support.
Updates Windows installer script.

This was SVN commit r11389.
2012-03-22 00:23:31 +00:00
Ykkrosh
8c6231f940 Fix black-square cursor on 16bpp Windows
This was SVN commit r11371.
2012-03-19 20:46:12 +00:00
Ykkrosh
20d23eb340 Sysdep code for Android/ARM
This was SVN commit r11075.
2012-02-15 15:40:31 +00:00
Ykkrosh
f4625e69af Partial Android compatibility.
Remove unnecessary VM allocation (which seemingly causes problems on
Android due to mmap during static initialization).
Allow building without NVTT.

This was SVN commit r11074.
2012-02-15 13:58:58 +00:00
Ykkrosh
3fab2729b5 Partial SDL2 compatibility
This was SVN commit r11033.
2012-02-06 22:47:35 +00:00
historic_bruno
41e3bad341 More build fixes for FreeBSD.
Adds BSD sysdep.
Adds support for MAKE variable, overriding make command in our build
scripts.
Fixes more files not ending with newline.

This was SVN commit r10994.
2012-01-31 00:06:56 +00:00
historic_bruno
fc27a5c0ea More FreeBSD build fixes.
Fixes some warnings about files that don't end with newline.

This was SVN commit r10991.
2012-01-30 06:21:11 +00:00
Ykkrosh
63e151fbd5 Slightly more Android compatibility
This was SVN commit r10975.
2012-01-28 16:38:21 +00:00
historic_bruno
95e6673ed4 Fixes include in wsdl.
This was SVN commit r10932.
2012-01-18 22:51:49 +00:00
janwas
8099388bec final sync with work - add VECTOR_ALIGNED, fix wsdl to match new SDL include path
This was SVN commit r10926.
2012-01-18 15:36:44 +00:00
Ykkrosh
182bf2b4af Vague start at hypothetical Android support
This was SVN commit r10923.
2012-01-17 22:05:43 +00:00
historic_bruno
893cb2668e Renames our sdl.h to libsdl.h, to avoid case sensitivity errors when it includes SDL.h.
This was SVN commit r10904.
2012-01-12 23:32:27 +00:00
historic_bruno
ed237ff1a6 Implements GetVideoMode on OS X (10.6+ compatible), based on patch by Echelon9. Fixes #847.
This was SVN commit r10897.
2012-01-11 23:41:59 +00:00
Ykkrosh
6bb54ee1d4 Fix Windows build
This was SVN commit r10896.
2012-01-11 23:04:33 +00:00
Ykkrosh
d07eac218c SDL 1.3 build fixes.
Support SDL_CONFIG environment variable in update-workspaces to pick
non-default sdl-config.
Avoid non-standard use of SDL/ in include paths.

This was SVN commit r10895.
2012-01-11 22:50:39 +00:00
Ykkrosh
6f2eec3c2e Fix warnings
This was SVN commit r10867.
2012-01-04 13:19:38 +00:00
janwas
785b6efa4b by default, don't attempt to start the aken driver
addresses security concerns
[http://www.wildfiregames.com/forum/index.php?showtopic=15482]

This was SVN commit r10858.
2012-01-02 23:38:46 +00:00
Ykkrosh
0ec4242962 Detect and fix printf signedness errors. Fixes #1086, #1087.
This was SVN commit r10846.
2012-01-01 16:43:10 +00:00
Ykkrosh
cc405939c2 Fix #1085 (incorrect buffer size), based on patch by Echelon9
This was SVN commit r10845.
2012-01-01 14:42:58 +00:00
janwas
325c344ddd increase size of error message buffer, don't complain about "invalid image hash" (known issue with aken.sys on Win7 x86).
fixes #1083

This was SVN commit r10834.
2011-12-29 20:15:47 +00:00
janwas
78ba79209d more minor fixes. rename uname.machine to x64 (less confusing than amd64)
This was SVN commit r10827.
2011-12-29 09:47:42 +00:00
janwas
23308f0259 wsdl: add error checks, add support for bpp in sdl_surface
This was SVN commit r10826.
2011-12-29 09:01:09 +00:00
Ykkrosh
1e210165f2 Fix some MSVC static analysis warnings
This was SVN commit r10825.
2011-12-29 02:06:09 +00:00
Ykkrosh
9ef1cd8ba8 Avoid the deprecated (and fallible) SHGetMalloc, per current MSDN documentation
This was SVN commit r10824.
2011-12-29 01:50:18 +00:00
janwas
c134221739 minor fixes
waio: ensure error is disk_full on failure
cache_adt: scaffolding code wrongly used std::remove_if instead of
list::remove. thanks to Echelon9 for catching this! fixes #1063

This was SVN commit r10818.
2011-12-28 11:21:05 +00:00
janwas
0d05c96be2 [gcc] compile fix.
fixes #1074
thanks to Echelon9!

This was SVN commit r10816.
2011-12-27 18:56:20 +00:00
janwas
3537ae31d5 sync with work:
x86_x64: update MSR definitions to include model 2F (westmere ex);
update bus clock computation for sandy bridge; remove unused
cpu_Serialize; use namespace, add model names
mahaf: cope with stricter security for services/drivers
ApicId -> GetApicId, move to apic module
aken: add batch file to install driver (optional)

This was SVN commit r10815.
2011-12-27 14:12:31 +00:00
janwas
2bc2666e4e sync with work - minor fixes
This was SVN commit r10770.
2011-12-19 11:55:30 +00:00
janwas
286ce58b1c more restrictive permissions required by tightened vista/win7 security (still unable to launch services without admin - but could install them once)
This was SVN commit r10762.
2011-12-18 12:21:57 +00:00
janwas
36ef0a376d workaround hardware/BIOS craziness
fixes #1047

This was SVN commit r10754.
2011-12-17 20:41:32 +00:00
janwas
f4e46d166d sync with work; minor fixes (wsdl must report gfx memory in KB to match sdl)
This was SVN commit r10678.
2011-12-06 09:17:39 +00:00
Ykkrosh
f865401136 Detect allocation failure
This was SVN commit r10520.
2011-11-12 23:57:33 +00:00
janwas
ff256528f2 sync with work. faster PopulationCount; avoid invalid param handler when debug string length exceeded; return error instead of dialog box when waio_Preallocate fails
This was SVN commit r10414.
2011-10-19 10:58:02 +00:00
janwas
8af8326563 replace old pool_allocator/RawPoolAllocator with ProxyAllocator that draws upon the new-style Arena (more efficient, avoids slow VirtualAlloc)
This was SVN commit r10410.
2011-10-16 10:37:21 +00:00
janwas
6c102ea712 add instrumentation to diagnose failed VM commit
This was SVN commit r10405.
2011-10-15 22:03:42 +00:00
janwas
3624f7c417 fix: pthread_self now returns a unique value in each thread (before, it was using the windows pseudo handle functionality)
This was SVN commit r10404.
2011-10-15 20:12:59 +00:00
janwas
f0df97d773 add support for retrieving all WMI class instances (required for detecting multiple graphics and sound cards)
fixes #998

This was SVN commit r10399.
2011-10-13 18:53:59 +00:00
janwas
8ac994e4e6 sync with work: add and use NOTHROW; export file_system functions; throw Status from File ctor; add WARN_THROW equivalents of WARN_RETURN
This was SVN commit r10384.
2011-10-10 10:04:36 +00:00
janwas
a106b9da0b apic: avoid warning message for ancient single-core, non-HT processors. fixes #985
wvm: improve diagnostics if allocation failed

This was SVN commit r10374.
2011-10-08 16:53:57 +00:00
janwas
39e5cb5dc9 proper fix for brain-dead Linux affinity API (that code was disabled in #547)
refs #985

This was SVN commit r10373.
2011-10-08 16:42:30 +00:00
janwas
0d708b31b4 avoid rare init-order bug when SRAT ACPI table is available AND APIC IDs are NOT
move APIC-related code to separate file, with its own initialization to
avoid circular dependency
fixes #976

This was SVN commit r10315.
2011-09-24 19:47:13 +00:00
janwas
9812ee2780 avoid error dialog when gamma upload fails twice (for reasons still unknown *sign*)
http://www.wildfiregames.com/forum/index.php?showtopic=14058&pid=226211&st=50&#entry226211

This was SVN commit r10303.
2011-09-21 20:38:09 +00:00
historic_bruno
08b4d96cf2 Moves Atlas UI to main thread while engine loop runs in new thread.
Fixes Atlas compatibility with OS X (wxOSX/Cocoa requires the UI to run
in the main thread). Fixes #500.
Fixes Windows shutdown to close COM library properly (and WMI).

This was SVN commit r10299.
2011-09-20 22:49:02 +00:00
janwas
80df13f47b add support for recursive mutex on windows; ensure h_mgr uses them (pthread doesnt guarantee default type is recursive)
This was SVN commit r10247.
2011-09-10 22:51:51 +00:00
janwas
63c7d3d52f fix warning about missing registry key (happens on one system for unknown reasons)
see
http://www.wildfiregames.com/forum/index.php?showtopic=14058&pid=225336&st=50&#entry225336

This was SVN commit r10202.
2011-09-07 19:15:20 +00:00
janwas
9a53cc1395 __SSE[2]__ didn't work on MSVC/ICC after all; introduce HAVE_SSE[2] instead
This was SVN commit r10089.
2011-08-24 09:23:44 +00:00
janwas
ed959b8da7 minor fixes: add missing arena.cpp; add required NONCOPYABLE annotation; fix UNUSED2 to work in the case of references.
This was SVN commit r10059.
2011-08-22 08:54:56 +00:00
Ykkrosh
509f4387d7 Fix build
This was SVN commit r10052.
2011-08-21 13:10:44 +00:00
janwas
881d3cebf4 lay groundwork for more efficient and flexible allocators. add new sysdep/vm that provides access to additional features on Windows (large pages, autocommit). add Pool/Arena allocators that avoid overhead and support arbitrary storage (not just the expensive virtual memory allocator in DynArray)
This was SVN commit r10051.
2011-08-21 11:00:09 +00:00
janwas
6304797cbd pool - safely handle zero-sized allocations (fixes #909)
snd_mgr - remove no longer needed hacks for native OpenAL
implementations
test_wdbg_sym.h - belated commit of warning fix

This was SVN commit r9944.
2011-07-31 09:42:57 +00:00
historic_bruno
153357f640 Replaces architecture-dependent cpuid function with inline GCC assembly. Should fix #670 by eliminating nasm dependency.
This was SVN commit r9891.
2011-07-21 01:44:29 +00:00
janwas
15df4aa4be OS X fix: if os_cpu_ClockFrequency reports an unknown/invalid value, measure the frequency instead; also avoid reporting invalid freqs in system_info
This was SVN commit r9886.
2011-07-20 08:10:36 +00:00
historic_bruno
8da2640f5e Fixes no-PCH build
This was SVN commit r9883.
2011-07-19 09:00:15 +00:00
janwas
b738f27283 hopefully fix non-Windows build errors
This was SVN commit r9875.
2011-07-18 15:25:48 +00:00
Ykkrosh
c33246d603 Fix build errors
This was SVN commit r9872.
2011-07-18 11:10:13 +00:00
janwas
0d23e3f333 post-alpha sync with work.
debug stack trace fixes, remove more asm, change CONTINUE/OK scheme to
OK/ALL_COMPLETE, fix tests

This was SVN commit r9871.
2011-07-18 09:21:56 +00:00
janwas
2d9e473483 fix for non-contiguous APIC IDs within a single package (happens on recent Intel CPUs)
This was SVN commit r9870.
2011-07-18 08:08:06 +00:00
janwas
aeddb5fb48 avoid warning when running a second instance and Mahaf is enabled
This was SVN commit r9863.
2011-07-17 19:19:33 +00:00
janwas
dd054c8d97 acpi: fix cast error (caught by runtime check)
x86_x64: simplify MSC version check

This was SVN commit r9846.
2011-07-16 17:27:07 +00:00
Ykkrosh
a4637c25d0 Fix no-PCH builds
This was SVN commit r9786.
2011-07-08 15:07:08 +00:00
janwas
492e49da38 add support for selection and deletion of entire words in text controls (ctrl+backspace/delete/left/right) based on patch by Chakakhan/kenny (thanks!)
also refactored wclipboard
closes #511

This was SVN commit r9646.
2011-06-23 10:12:43 +00:00
janwas
ef4df42895 add support for .dylib on OS X based on patch by Yves (thanks!)
c.f.
http://www.wildfiregames.com/forum/index.php?showtopic=14173&pid=220828&st=0&#entry220828

This was SVN commit r9642.
2011-06-20 20:06:51 +00:00
Ykkrosh
266977bc78 Attempt to fix manifest problems in autobuild.
This was SVN commit r9607.
2011-06-09 23:16:27 +00:00
janwas
6feb143e61 OS X compile fix
This was SVN commit r9582.
2011-05-30 23:06:16 +00:00
janwas
ef74ad7f7b OS X compile fix (hopefully): add definition for O_DIRECT
This was SVN commit r9581.
2011-05-30 21:49:33 +00:00
janwas
034881d30c sync with work. simplify wnuma, refactor+fix topology (bugs: APIC IDs array didn't correspond to OS processor number; couldn't handle noncontiguous APIC ID field values)
This was SVN commit r9580.
2011-05-30 13:00:20 +00:00
Ykkrosh
ce647cf8e3 Add a manifest hack to fix building in VC2008+, when loading DLLs built in VC2005
This was SVN commit r9576.
2011-05-29 21:13:21 +00:00
janwas
e3d87b0375 remove no longer necessary lowlevel wsock implementation (superseded by enet) since the delay load hook isn't compatible with a DLL packaging of enet.
-> cstr serialization uses lib/byte_order.h instead of htons; removed
hostname/IP from system_info (Philip agrees its utility is negligible)

This was SVN commit r9572.
2011-05-29 19:59:51 +00:00
Ykkrosh
755802d0ce Fix build errors
This was SVN commit r9556.
2011-05-27 13:32:34 +00:00
janwas
34186dd017 refactor file interface. requires workspace update
- separate file_system_util into vfs functions (-> vfs/vfs_util) and
file_system (avoids ugly fs_util namespace prefix)
- get rid of non-portable O_BINARY_NP etc. flags
- use standard O_WRONLY etc. flags instead of LIO_WRITE; but avoid the
need for specifying O_CREAT|O_TRUNC
- only open files for aio when O_DIRECT is specified (which 0ad does
not) - avoids wasting time and security issues
- return file descriptor directly instead of via output param
- waio: safer FCB mechanism that avoids mixing descriptors between lowio
and aio

This was SVN commit r9550.
2011-05-25 10:39:13 +00:00
janwas
7600c3862b refactor gfx detection code (interface), allow exporting from DLL (required at work)
This was SVN commit r9546.
2011-05-24 14:17:47 +00:00
janwas
f1a1f023df reinstate aligned_allocator.h (required at work)
further fixes to preserve the last error while building error messages
somewhat more accurate NUMA factor computation

This was SVN commit r9545.
2011-05-23 14:10:45 +00:00
Ykkrosh
1075e206f7 Fix some format string errors
This was SVN commit r9534.
2011-05-18 19:10:36 +00:00
janwas
0ea42d3185 avoid stomping on the last error while dumping stack
refs #849

This was SVN commit r9519.
2011-05-15 00:00:01 +00:00
janwas
963960fafa no longer warn when SetFileValidData fails, as it does on all FAT volumes (boo)
fixes #849

This was SVN commit r9511.
2011-05-14 10:37:42 +00:00
janwas
9b7cdef124 ensure WHRT debug messages are always displayed (in case of compatibility trouble)
refs #709

This was SVN commit r9485.
2011-05-08 09:14:21 +00:00
janwas
46e5db4dc4 fix build with ICC
This was SVN commit r9475.
2011-05-07 15:47:20 +00:00
janwas
f608b44d1d fix self-test and map load on Windows (avoid mixing dir separators).
add more specific error codes (used at work)

This was SVN commit r9462.
2011-05-06 18:45:30 +00:00
janwas
0a7aeb23f7 smbios fix
This was SVN commit r9458.
2011-05-06 14:54:46 +00:00
Ykkrosh
1da3cdb498 Fix build errors
This was SVN commit r9453.
2011-05-05 20:24:22 +00:00
janwas
5c76bc12fa refactor status code definitions: allow modules to define an array of them (more convenient+efficient).
merge ERR::NO_SYS, NOT_IMPLEMENTED into NOT_SUPPORTED
renderer: remove unnecessary ogl_shader include

This was SVN commit r9447.
2011-05-05 13:03:34 +00:00
janwas
fd561cb88b hotloading fix on Windows
refs #781

This was SVN commit r9446.
2011-05-05 10:50:47 +00:00
janwas
9719432ff9 fix memory leak (wasn't freeing the entire chain of SMBIOS structures)
This was SVN commit r9425.
2011-05-04 13:08:09 +00:00
janwas
a7152270f4 Path now goes to some trouble to prevent mixing / and \ slashes (causes trouble when hotloading, and some Windows APIs can't handle it, either)
WARNING: that means stuff like Path(nativeDataPath/"art/") is forbidden
and will raise errors on Windows when nativeDataPath contains \. always
use /"" to add a trailing slash. never embed "/" in OsPath component
strings (it's OK for VFS strings since they consistently use /).

wdir_watch, CmdLineArgs: avoid mixed separators
wutil: remove overzealous assertion (infinite recursion if an error
arose before we create a window)

refs #781

This was SVN commit r9424.
2011-05-04 12:16:51 +00:00
janwas
7523894760 ENSURE(0) -> DEBUG_WARN_ERR(ERR::LOGIC) (a bit smaller, and more descriptive)
This was SVN commit r9423.
2011-05-04 12:10:17 +00:00
Ykkrosh
9733affb05 Fix non-PCH build
This was SVN commit r9419.
2011-05-04 01:17:09 +00:00
Ykkrosh
178a700c16 Fix build
This was SVN commit r9412.
2011-05-03 15:58:25 +00:00
janwas
cce3bebe0c fix error propagation/avoid SetLastError pollution
This was SVN commit r9411.
2011-05-03 13:46:35 +00:00
janwas
cccd6849a7 cleanup (requires update-workspaces)
lib_errors.cpp: replace with status.cpp, adapt to needs at work
wutil: fix runtime warning reported via feedback box
config: merge CONFIG_PARANOIA and !CONFIG_FINAL into
CONFIG_ENABLE_CHECKS
add openmp, pointer_typedefs.h

This was SVN commit r9410.
2011-05-03 12:38:42 +00:00
janwas
88c44c7d73 smbios: add support for structures 34,35,36,39,41 (found on rather new BIOS)
This was SVN commit r9377.
2011-05-01 12:18:45 +00:00
Ykkrosh
791ecee26b Build fixes
This was SVN commit r9365.
2011-04-30 13:55:55 +00:00
janwas
5ca66fc757 cleanup: move ADTs into lib/adts (separate files). fix definition of ASSERT
This was SVN commit r9364.
2011-04-30 13:35:36 +00:00
janwas
0720025073 cleanup
reduce dependency on PCH. move KiB constants to alignment, ARRAY_SIZE to
code_annotation.h.
move glext_funcs.h to external_libraries/glext_funcs.h, move part of
ogl.h to external_libraries/opengl.h
remove unused saturating arithmetic functions

This was SVN commit r9363.
2011-04-30 13:22:46 +00:00
janwas
4663ac0fe7 split debug_assert into ENSURE and ASSERT as discussed in a previous meeting.
the old debug_assert always ran and tested the expression, which slows
down release builds. wrapping them in #ifndef NDEBUG is clumsy. the new
ASSERT behaves like assert and ENSURE like the old debug_assert. Let's
change any time-critical but not-super-important ENSURE to ASSERT to
speed up release builds. (already done in bits.h and unique_range.h)

This was SVN commit r9362.
2011-04-30 13:01:45 +00:00
janwas
6c915291cc cleanup (requires update-workspaces):
major refactor of wfilesystem - remove gotos and workaround for FAT file
times
replace more round_up of constants with Align<>
remove old unused allocators (STL aligned, matrix, some shared_ptr)
move allocator utils into separate headers.
remove lockfree, wterminal
avoid testing __cplusplus

This was SVN commit r9361.
2011-04-30 12:34:28 +00:00
janwas
9bdb54bc76 fix failure to preallocate disk space on Windows by always rounding up the file size regardless of the io::Parameters
This was SVN commit r9358.
2011-04-30 09:13:10 +00:00
Ykkrosh
1139124451 Fix some build errors and warnings
This was SVN commit r9351.
2011-04-29 20:38:13 +00:00
janwas
2374caac3e major refactor of file/io and alignment code. requires update-workspaces
. completely rewrite waio - use IOCP, add several hardcore
optimizations. now outperforms the
  AS SSD and ATTO benchmarks when writing
. refactor file interface - use LIO_READ instead of 'r', allow access to
file descriptor.
. completely rewrite the IO wrapper. now much more simple, less CPU
overhead, adds
  support for pre-issue/post-completion hooks and preallocation.
  io::Run defaults to simple synchronous IO; use io::Parameters to get
asynchronous.
. add alignment.h with constants and Align() function template (more
efficient than
  round_up for compile-time constants)
. add UniqueRange - similar to C++0x unique_ptr (emulated for C++03),
plus a
  built-in size. avoids expensive thread-safe reference counting in
shared_ptr.

cleanup:
- move fat_time functions into archive_zip
- remove no longer needed io_align and block_cache
- reduce dependencies in sysdep/compiler (move parts to
code_annotation.h)
- move IOCP into separate file (reused by waio)

This was SVN commit r9350.
2011-04-29 19:10:34 +00:00
Ykkrosh
5a773d4ca0 Be robust to null proxy URL strings. Should fix #778.
This was SVN commit r9299.
2011-04-22 16:05:00 +00:00
Ykkrosh
b35d3a5e3d __cpuidex was added in VC2008 SP1, so don't use it if pre-SP1
This was SVN commit r9284.
2011-04-19 23:23:16 +00:00
janwas
a3812af176 smbios: avoid warning when no information is returned (happens on 32-bit XP)
This was SVN commit r9218.
2011-04-09 17:09:48 +00:00
Ykkrosh
c59f7bcb8f Fix Clang warning ("operands of ? are integers of different signs")
This was SVN commit r9214.
2011-04-09 00:07:21 +00:00
janwas
d46a892a5d smbios: avoid displaying unknown maxError value; add enumerators for BIOS characteristics and extended characteristics
This was SVN commit r9207.
2011-04-08 07:10:31 +00:00
janwas
5b7dbe6bc9 smbios: more convenient interface that avoids having to check if the structures pointer is null (can still detect failure by checking whether all/guaranteed member pointers are zero)
This was SVN commit r9200.
2011-04-07 19:35:45 +00:00
janwas
b5c6868ac2 smbios SystemSlot fix: add missing field, avoid displaying unknown device/function numbers
This was SVN commit r9199.
2011-04-07 19:28:24 +00:00
Ykkrosh
aab98f90e0 Fix startup crash on non-Windows
This was SVN commit r9197.
2011-04-07 17:22:28 +00:00
Ykkrosh
e1b9083c41 Fix probable OS X build error
This was SVN commit r9196.
2011-04-07 17:18:32 +00:00
janwas
99aa427ffa make use of SMBIOS information to detect CPU frequency and memory size
smbios fixes: also ignore max value (used by Dell BIOS to report invalid
MemoryDevice bit width); fix incorrect error check that caused 0 to be
returned on all but the first call; add implicit conversion operator to
allow using size without appending .value

This was SVN commit r9195.
2011-04-07 17:06:00 +00:00
janwas
dcde67038f ICC compile fixes (VC's overload resolution is apparently quite different)
This was SVN commit r9169.
2011-04-05 17:45:47 +00:00
janwas
1c2e410b7d final smbios improvements.
add comments
add support for bit flags
use wrapper classes and SFINAE instead of flags to detect enums / sizes
/ handles
avoid potential truncation of byte sizes
avoid displaying numeric_limits::min values ("unknown")

This was SVN commit r9168.
2011-04-05 17:14:18 +00:00
Ykkrosh
d3ba9a24d3 Fix GCC build errors ("explicit template specialization cannot have a storage class",
"need 'typename' before 'static_assert_<...>::type' because
'static_assert_<...>' is a dependent scope").
Fixes #767.

This was SVN commit r9167.
2011-04-05 17:07:06 +00:00
janwas
3dbb29d665 smbios improvements: add specializations for bool/Handle (no longer requires a flag); omit empty/meaningless fields
convert remaining enumerators to ENUM, lowercase them to avoid conflicts
with macros, wrap them in struct to allow identical enumerator names

This was SVN commit r9165.
2011-04-05 09:52:57 +00:00
janwas
f35da41a0c smbios: minor fixes, add partial support for displaying enumerator names, move visitors to .cpp, use pragma pack regardless of compiler
This was SVN commit r9163.
2011-04-04 17:44:36 +00:00
janwas
68bc0a5651 smbios: add support for stringizing the structures
This was SVN commit r9162.
2011-04-04 16:50:02 +00:00
janwas
a2bad46f27 smbios fixes:
- memmove all bytes in the table, not just 8
- end pointer was off by 4
- add support for structures 8,10,22,26,27,28

This was SVN commit r9161.
2011-04-04 15:01:40 +00:00
Ykkrosh
0ddf2b0f34 Fix build on VC2008
This was SVN commit r9157.
2011-04-03 21:41:17 +00:00
janwas
231387d2da linux compile fix (explicit instantiation must be at namespace scope), adjust end pointer to match 8 bytes removed in workaround
This was SVN commit r9153.
2011-04-03 19:29:16 +00:00
janwas
2c72e1f364 (requires update-workspaces)
add initial SMBIOS implementation for retrieving system information
wacpi -> wfirmware (now also used to retrieve SMBIOS table)

This was SVN commit r9144.
2011-04-03 15:38:48 +00:00
janwas
6026330fce updated version of Aken that includes support for MSR and static validation (-> .c instead of .cpp)
closes #754 (please re-open if not)

This was SVN commit r9137.
2011-04-01 15:06:52 +00:00
janwas
d5b3201bfe noted while checking MSR prerequisites that the previous HasNehalem is inaccurate. PLATFORM_INFO is also supported by newer processors (e.g. Sandy Bridge), whereas UNCORE_* are tied to Nehalem and Westmere => split up HasNehalem into HasPlatformInfo and HasUncore. (the latter has been replaced by a "system agent" in newer designs)
refs #754

This was SVN commit r9136.
2011-03-31 21:30:42 +00:00
janwas
c396997009 fixes from work: avoid potential 0-pointer dereference in freelist, also avoid branching in freelist functions via sentinel
wdll_main.h: avoid warning for DLLs using TLS
file_system_util.h: export functions

This was SVN commit r9128.
2011-03-28 12:28:29 +00:00
Ykkrosh
9193ba56f9 Build fixes and whatnot
This was SVN commit r9115.
2011-03-23 21:15:22 +00:00
janwas
1f7e8d7194 per discussion with Philip, remove STL_HASH_MAP etc. because they're ugly, rarely used and superseded by boost::unordered*
This was SVN commit r9111.
2011-03-23 16:56:27 +00:00
janwas
588bfa11bf remove unnecessary utf8 includes
This was SVN commit r9110.
2011-03-23 16:32:44 +00:00
janwas
0999ba0941 refactoring:
- simplify sys_get_executable_name interface - return OsPath directly,
rename to sys_ExecutablePathname
- add validation of path components in GetDirectoryEntries
- replace multiple calls to GetModuleFileNameW with
sys_ExecutablePathname
- lift nearly all MAX_PATH limitations (required at work)

This was SVN commit r9109.
2011-03-23 16:14:47 +00:00
janwas
64a02932e3 refactor headers: path_util -> path, native_path -> os_path, remove where unnecessary
This was SVN commit r9108.
2011-03-23 14:43:35 +00:00
janwas
dcd192cb60 refactor path interface:
- use wrapper class instead of std::wstring (reduces mixing of
strings/paths; allows safe+easy join via operator/ and convenient
case-insensitive comparison via operator==, avoids NativePathFromString,
similar to boost::filesystem)
- NativePath -> OsPath
- add hash and To/FromJSVal for Path
- add TS_ASSERT_PATH_EQUALS
- replace _wfopen_s with sys_OpenFile
- remove obsolete SortFiles/Directories

This was SVN commit r9107.
2011-03-23 13:36:20 +00:00