summaryrefslogtreecommitdiffstats
path: root/base/build/base.vcproj
Commit message (Collapse)AuthorAgeFilesLines
* ScopedVariant implementation.tommi@chromium.org2009-03-191-0/+8
| | | | | | | | | | | | | | A class for automatically freeing a COM VARIANT at the end of a scope. Additionally provides a few functions to make the encapsulated VARIANT easier to use. Instead of inheriting from VARIANT, I took the containment approach in order to have more control over the usage of the variant and guard against memory leaks. Review URL: http://codereview.chromium.org/46059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12081 0039d316-1c4b-4281-b951-d872f2087c98
* Add API functions to control Quantify, as well as expose theseasargent@chromium.org2009-03-091-0/+8
| | | | | | | | | functions to javascript. Review URL: http://codereview.chromium.org/40255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11291 0039d316-1c4b-4281-b951-d872f2087c98
* In preparation for making changes to worker_pool_linux.cc.willchan@chromium.org2009-03-061-1/+1
| | | | | | Review URL: http://codereview.chromium.org/39081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11149 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor plugin process code in the browser process so that the ↵jam@chromium.org2009-02-111-0/+4
| | | | | | | | browser/about:memory/task manager/metrics code doesn't depend on PluginProcessHost pointers. In a future changelist I'll add one central child process registry in the browser process. Review URL: http://codereview.chromium.org/20196 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9621 0039d316-1c4b-4281-b951-d872f2087c98
* Add a Version class and matching unit tests, roughly based on ↵erikkay@google.com2009-01-291-0/+8
| | | | | | | | chrome/installer/util/version.*. This version has more flexible parsing rules and is more robust to detecting bogus versions, supporting arbitrary numbers of version components rather than just dotted quads. It's possible that we should switch chrome installer to use this version. Review URL: http://codereview.chromium.org/19667 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8901 0039d316-1c4b-4281-b951-d872f2087c98
* Add ScopedTempDir - a class that manages the lifetime of a temporary directory.erikkay@google.com2009-01-281-0/+8
| | | | | | Review URL: http://codereview.chromium.org/19411 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8824 0039d316-1c4b-4281-b951-d872f2087c98
* Add portable keyboard codesphajdan.jr@chromium.org2009-01-281-0/+8
| | | | | | Review URL: http://codereview.chromium.org/19021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8804 0039d316-1c4b-4281-b951-d872f2087c98
* WaitableEvent is the replacement for Windows events. Previously in the code, ↵agl@chromium.org2009-01-151-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | a HANDLE from CreateEvent was used for signaling, both within a process and across processes. WaitableEvent is the cross platform replacement for this. To convert: * HANDLE -> base::WaitableEvent* * ScopedHandle -> scoped_ptr<base::WaitableEvent> * CreateEvent -> new base::WaitableEvent * SetEvent -> base::WaitableEvent::Signal * ResetEvent -> base::WaitableEvent::Reset * ObjectWatcher -> base::WaitableEventWatcher * WaitForMultipleObjects -> static base::WaitableEvent::WaitMany ObjectWatcher remains for Windows specific code. WaitableEventWatcher has an identical interface save, * It uses WaitableEvents, not HANDLEs * It returns void from StartWatching and StopWatcher, rather than errors. System internal errors are fatal to the address space IMPORTANT: There are semantic differences between the different platforms. WaitableEvents on Windows are implemented on top of events. Windows events work across process and this is used mostly for modal dialog support. Windows events can be duplicated with DuplicateHandle. On other platforms, WaitableEvent works only within a single process. In the future we shall have to replace the current uses of cross-process events with IPCs. BEWARE: HANDLE, on Windows, is a void *. Since any pointer type coerces to void *, you can pass a WaitableEvent * where a HANDLE is expected without any build-time errors. Review URL: http://codereview.chromium.org/16554 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8126 0039d316-1c4b-4281-b951-d872f2087c98
* Renaming the following files to include the _win suffix:tommi@chromium.org2009-01-151-3/+3
| | | | | | | | | | | | | | | scoped_comptr*.* scoped_bstr*.* addition: time_unittest_win.cc -> time_win_unittest.cc BUG=6409 Also renaming the scoped_comptr class to ScopedComPtr to conform with chromium style (and not boost as before). Review URL: http://codereview.chromium.org/18054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8098 0039d316-1c4b-4281-b951-d872f2087c98
* scoped_bstr and StackBstr implementations. The scoped_bstr class is a ↵tommi@chromium.org2009-01-141-0/+8
| | | | | | | | | | | wrapper around BSTR system calls with some added functionality. StackBstr is for those times when you need to pass a fixed string to a function but visiting the heap etc to allocate a new BSTR can be avoided. StackBstr not zero cost, but much cheaper than creating a new BSTR like we currently do in many places. Review URL: http://codereview.chromium.org/18006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8011 0039d316-1c4b-4281-b951-d872f2087c98
* com_ptr implementation. This is a fairly simple implementation of a smart ↵tommi@chromium.org2009-01-121-2/+6
| | | | | | | | | | | class specifically meant for IUnknown derived COM interfaces. The class gets much of its functionality from the already existing scoped_refptr but adds a few COM specific methods and some that scoped_refptr doesn't already have, yet are often necessary such as Receive(), Detach() and Attach(). I went with caps for the first letter of method names, but for the three I just mentioned, it might be prettier to have them in all lower case to better match with methods from the parent class. Let me know what you think. Review URL: http://codereview.chromium.org/17473 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7890 0039d316-1c4b-4281-b951-d872f2087c98
* Adds a helper class used to mark/define critical section in a class and then ↵maruel@chromium.org2008-12-171-0/+8
| | | | | | | | | | | | install controls to check that those critical sections are not violated. This CL is due the thread posted on chromium-dev: http://groups.google.com/group/chromium-dev/browse_frm/thread/30af0b63b6adb245. From Gaetano Mendola <mendola bigfoot com> Review URL: http://codereview.chromium.org/8621 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7127 0039d316-1c4b-4281-b951-d872f2087c98
* Switch back svn:eol-style=native for .sln, .vcproj and .vsprops files.maruel@chromium.org2008-12-161-987/+987
| | | | | | | Patch fails otherwise on non-Windows platforms. Review URL: http://codereview.chromium.org/14478 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7093 0039d316-1c4b-4281-b951-d872f2087c98
* Changed svn:eol-style of all .sln and .vcproj files to CRLFscherkus@chromium.org2008-12-041-987/+987
| | | | | | Review URL: http://codereview.chromium.org/13133 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6372 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Windows vcproj file, it should be test_file_util_win.cc.deanm@chromium.org2008-11-251-1/+1
| | | | | | Review URL: http://codereview.chromium.org/12455 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6009 0039d316-1c4b-4281-b951-d872f2087c98
* Un-duplicate EvictFileFromSystemCache.deanm@chromium.org2008-11-251-0/+8
| | | | | | | | | Change required for http://codereview.chromium.org/9639 . Review URL: http://codereview.chromium.org/12407 Patch from Pawel Hajdan Jr. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6006 0039d316-1c4b-4281-b951-d872f2087c98
* Move dmg_fp to base/third_party/dmg_fp and include thetc@google.com2008-11-141-0/+44
| | | | | | | | | | | | files directly in base.vcproj. Remove the old dmg_fp.vcproj file and remove it from the *.sln files. I've kept third_party/dmg_fp around for the mac and scons build which I will fix up in follow up changes. Review URL: http://codereview.chromium.org/10716 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5514 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrote the clipboard API to be more concurrent. Added a helper class to ↵estade@chromium.org2008-11-051-0/+12
| | | | | | | | make it more foolproof. Updated all clients and unittests. Mac port by jeremy@chromium.org Review URL: http://codereview.chromium.org/9154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4719 0039d316-1c4b-4281-b951-d872f2087c98
* * Add write and read/write support to FileStream (renamed from FileInputStream).erikkay@google.com2008-11-031-0/+8
| | | | | | | | * Moved net/disk_cache/os_file to base/platform_file. Review URL: http://codereview.chromium.org/8843 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4454 0039d316-1c4b-4281-b951-d872f2087c98
* Create a thread-safe observer list. Will be usedmbelshe@google.com2008-10-221-0/+4
| | | | | | | | | by SystemMonitor. Right now the class requires that Observers be RefCounted<>. This is because we invoke tasks via NewRunnableMethod for them. However, because we manually track lifecycle via AddObserver/RemoveObserver, we could override the RunnableMethodTraits to not require RefCounted<>. This would have the advantage that callers do not need to make all Observers be RefCounted, but makes it more critical that observers not forget to call RemoveObserver(). Review URL: http://codereview.chromium.org/7353 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3787 0039d316-1c4b-4281-b951-d872f2087c98
* Construct a field trial to see if HIGH or MEDIUM memory model "works better"jar@google.com2008-10-191-4/+12
| | | | | | | | | | | | | | Includes definition of a FieldTrial class to support this. I have thoughts in my head about how this will eventually extend to be controllable via UMA (as well as being able to run tests defined at compile time, as was done in this example. r=mbelshe, mmentovai Review URL: http://codereview.chromium.org/7638 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3604 0039d316-1c4b-4281-b951-d872f2087c98
* Add a DirectoryWatcher class, allowing objects to be notified wheneverevanm@google.com2008-10-171-5/+13
| | | | | | | | a directory's contents change. Review URL: http://codereview.chromium.org/6377 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3504 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused shared_event.agl@chromium.org2008-10-161-8/+0
| | | | | | | Review URL: http://codereview.chromium.org/7439 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3484 0039d316-1c4b-4281-b951-d872f2087c98
* Port parts of base/process_util to Linux.evanm@google.com2008-10-141-1/+1
| | | | | | | | Review URL: http://codereview.chromium.org/6492 Patch from Paweł Hajdan jr <phajdan.jr@gmail.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3363 0039d316-1c4b-4281-b951-d872f2087c98
* Add a FilePath objectmark@chromium.org2008-10-031-0/+8
| | | | | | Review URL: http://codereview.chromium.org/6025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2838 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring for portability:mark@chromium.org2008-09-291-0/+12
| | | | | | | | | | | | | - Move chrome/common/env_util to base/sys_info - Move chrome/common/rand_util to base/rand_util (new), simplify its public interface, and fix its implementation Patch by Paweł Hajdan, Jr. <phajdan.jr@gmail.com> http://codereview.chromium.org/4079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2697 0039d316-1c4b-4281-b951-d872f2087c98
* Provide autorelease pool management on the Mac in all types of message pumps.mark@chromium.org2008-09-251-0/+4
| | | | | | | Fix a few unit tests to use autorelease pools as needed. Review URL: http://codereview.chromium.org/3805 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2603 0039d316-1c4b-4281-b951-d872f2087c98
* Implement a SystemMonitor class for monitoring system statusmbelshe@google.com2008-09-251-0/+12
| | | | | | | | | | | | changes. For now, this is just implementing power changes (e.g. battery/AC power changes). This CL just contains this class; the hooking into Chrome will come in a separate CL, but I've tested the basics already. Review URL: http://codereview.chromium.org/4051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2593 0039d316-1c4b-4281-b951-d872f2087c98
* Create a class for getting at processor information via thembelshe@google.com2008-09-241-0/+8
| | | | | | | | | | | | CPUID instruction. These will get used and integrated into the build in a future changelist. I debated on the naming of these. They are x86 processor specific. Suggestions on naming is welcome. Review URL: http://codereview.chromium.org/3199 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2542 0039d316-1c4b-4281-b951-d872f2087c98
* Add a class for extracting system-specific information, like the number of ↵deanm@chromium.org2008-09-171-0/+8
| | | | | | | | processors. Review URL: http://codereview.chromium.org/3084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2302 0039d316-1c4b-4281-b951-d872f2087c98
* Create a LazyInstance abstraction for avoiding static constructors by lazily ↵deanm@google.com2008-09-081-0/+8
| | | | | | | | creating an instance of an object on first access. This is like Singleton, but without the Singleton property of sharing instances. This also preallocates space for the object to avoid the heap to try to help fragmentation and creation performance. Review URL: http://codereview.chromium.org/1608 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1837 0039d316-1c4b-4281-b951-d872f2087c98
* HMAC-SHA1 implementation for Mac based on CommonCrypto;mmentovai@google.com2008-09-041-2/+2
| | | | | | | allow Windows HMAC-SHA1 to use keys longer than 16 bytes. Review URL: http://codereview.chromium.org/218 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1724 0039d316-1c4b-4281-b951-d872f2087c98
* Add ThreadLocalPointer and ThreadLocalBoolean abstractions, that will ↵deanm@google.com2008-09-031-0/+8
| | | | | | deprecate the old ThreadLocalStorage / TLSSlot APIs. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1678 0039d316-1c4b-4281-b951-d872f2087c98
* Initial pass at simple event tracing. I added a few traces to tcp_socket ↵erikkay@google.com2008-09-021-2/+10
| | | | | | | | | | | | and test_shell to get an idea of what a simple trace might look like. Here's a sample output line: 11:24:19.660604 0x1e278:0x1e24c BEGIN url.load [0x5 http://mail.google.com/mail/] <E:\src\cr\src\webkit\tools\test_shell\test_webview_delegate.cc:189> format is:hh:mm:ss.us pid:tid TYPE NAME [id, extra] <file:line> git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1641 0039d316-1c4b-4281-b951-d872f2087c98
* Bring back SimpleThread, but with a Delegate interface.deanm@google.com2008-08-291-0/+8
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1519 0039d316-1c4b-4281-b951-d872f2087c98
* Move process_util.cc to process_util_win.cc to make way for posix.deanm@google.com2008-08-261-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1377 0039d316-1c4b-4281-b951-d872f2087c98
* Allow consumers of MessageLoop to specify the type of MessageLoop they want.darin@google.com2008-08-261-0/+8
| | | | | | | | | | | | | | | | This CL introduces a Type enum to MessageLoop, and I also created subclasses of MessageLoop corresponding to the non-default types: MessageLoopForIO and MessageLoopForUI. I moved all of the platform-specific MessageLoop APIs onto either MessageLoopForIO or MessageLoopForUI. MessageLoopForIO gets the Watcher API, and MessageLoopForUI gets the Observer and Dispatcher APIs. Under the hood, both are implemented in terms of MessagePumpWin, but that will change in a future CL. The Thread class is changed to allow the consumer to specify the Type of MessageLoop they want to have setup on the created thread. I re-organized message_loop_unittest.cc and timer_unittest.cc so that I could exercise all (or most) of the tests against each type of MessageLoop. Note: I know that "explicit MessageLoop(Type type = TYPE_DEFAULT);" is in violation to the style-guide's restriction against default arguments. I'm working on finding a decent solution to that problem. Please ignore this issue for now. The corresponding chrome/ changes are coming in a separate CL due to Reitveld data size limitations. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1362 0039d316-1c4b-4281-b951-d872f2087c98
* Move NOTIMPLEMENTED() macro from "base/notimplemented.h" into "base/logging.h".ericroman@google.com2008-08-251-4/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1300 0039d316-1c4b-4281-b951-d872f2087c98
* Remove CallWrapper and SimpleThread. They overlap too closely with the ↵deanm@google.com2008-08-221-12/+0
| | | | | | message loop variants Thread and Task. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1230 0039d316-1c4b-4281-b951-d872f2087c98
* Create a simple abstraction to a native OS thread, mostly useful for ↵deanm@google.com2008-08-221-0/+8
| | | | | | unittesting when you don't want a message loop. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1217 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the final gcc warnings in base and net. Provide some macros to ↵mmentovai@google.com2008-08-211-5/+9
| | | | | | selectively disable MSVC warnings. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1194 0039d316-1c4b-4281-b951-d872f2087c98
* Create a CallWrapper interface, for making closure-like callbacks. This is ↵deanm@google.com2008-08-211-0/+4
| | | | | | similar to RunnableMethod, but does not derive / involve a Task. This is more convenient than Callback, because the interfaces do not need to know what the underlying template arguments are, everything is dealt with as a CallWrapper*. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1151 0039d316-1c4b-4281-b951-d872f2087c98
* Port the Thread class properly to Mac and Linux. This involved portingdarin@google.com2008-08-211-1/+1
| | | | | | | | | | | | PlatformThread and creating an API on PlatformThread to create a native thread and later join with it. I also made a few other tweaks to PlatformThread, such as eliminating the Current() method which appears to be unused. The operator==() is also unused, so I killed it as well. I made a few other miscellaneous cleanups and adjustments. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1146 0039d316-1c4b-4281-b951-d872f2087c98
* Move time formatters that only use ICU into base/time.*tc@google.com2008-08-191-0/+8
| | | | | | | | | | | | | This allows us to use the time formatters in, e.g., net or webkit. Remove CookieExpires since it's not used. BUG=1164516 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1063 0039d316-1c4b-4281-b951-d872f2087c98
* Large patch set (159 files total) to cleanup the includes.maruel@google.com2008-08-151-0/+4
| | | | | | | | | | - Slightly reduce the size of the generated .lib files ~3%. - Reduce the number of implicit and explicit atl and windows includes. hooray! - Help incremental build by reducing the number of unnecessary included files. - Split some template class in two, one base class for the common code and the specialization that inherits from the base class. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@937 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce MessagePump to represent the native message pump used to drive adarin@google.com2008-08-151-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MessageLoop. A MessageLoop now has a MessagePump. This will make it possible to port the MessagePump interface to other platforms as well as to use an IO completion port for our worker threads on Windows. Currently, there is only MessagePumpWin, which attempts to preserve the pre-existing behavior of the MessageLoop. API changes to MessageLoop: 1. MessageLoop::Quit means return from Run when the MessageLoop would otherwise wait for more work. 2. MessageLoop::Quit can no longer be called outside the context of an active Run call. So, things like this: MessageLoop::current()->Quit(); MessageLoop::current()->Run(); are now: MessageLoop::current()->RunAllPending(); 3. MessageLoop::Quit can no longer be called from other threads. This means that PostTask(..., new MessageLoop::QuitTask()) must be used explicitly to Quit across thread boundaries. 4. No protection is made to deal with nested MessageLoops involving watched objects or APCs. In fact, an assertion is added to flag such cases. This is a temporary measure until object watching and APC facilities are removed in favor of a MessagePump designed around an IO completion port. As part of this CL, I also changed the automation system to use an IPC::ChannelProxy instead of an IPC::Channel. This moves the automation IPC onto Chrome's IO thread where it belongs. I also fixed some abuses of RefCounted in the AutomationProvider class. It was deleting itself in some cases! This led to having to fix the ownership model for AutomationProvider, which explains the changes to AutomationProviderList and so on. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@928 0039d316-1c4b-4281-b951-d872f2087c98
* Unify maintenance of NumberFormat objects into a cross-platform Singleton. ↵mmentovai@google.com2008-08-131-4/+0
| | | | | | Clean up some dead code and dead files. WideToNativeMB and its inverse have been obsoleted by SysWideToNativeMB in sys_string_conversions*. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@806 0039d316-1c4b-4281-b951-d872f2087c98
* Kill check handler. It seems to be unused, and is implemented using ugly SEHdeanm@google.com2008-08-131-4/+0
| | | | | | | handlers. If we want this we could reimplement it cleanly. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@802 0039d316-1c4b-4281-b951-d872f2087c98
* Make debug_util cross platform, adding BeingDebugged and BreakDebugger. Linuxdeanm@google.com2008-08-131-0/+4
| | | | | | | supported added, and Mac OSX left as a todo for the mac team. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@785 0039d316-1c4b-4281-b951-d872f2087c98
* The Posix shared memory implementation.avi@google.com2008-08-121-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@742 0039d316-1c4b-4281-b951-d872f2087c98