summaryrefslogtreecommitdiffstats
path: root/base
Commit message (Collapse)AuthorAgeFilesLines
* - Add Thread::StopSoon() and remove Thread::NonBlockingStop(). StopSoon() ↵maruel@google.com2008-08-123-138/+113
| | | | | | | | | | | | can't be implemented externally of the Thread class where NonBlockingStop() was really just an helper function solely used in printing. - Move two member functions access from public to protected. - Add documentation about which thread modifies which member variable. - Simplify ThreadStartInfo. This removes one heap allocation. - Improve unit test coverage. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@728 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of separate SConscript.main.linux:sgk@google.com2008-08-122-45/+76
| | | | | | | | | | | * Set -j default to %NUMBER_OF_PROCESSORS% + 1 only on Windows. * Initialize LOAD= modules up front, and let Linux override to the subset that are currently building. * Initialize Linux CCFLAGS, LINKFLAGS and LIBS in a separate if-clause (like we do for Windows). * Remove SCONSCRIPT_MAIN code in {base,chrome}/SConstruct in favor of just call ../build/SConscript.main. * Merge in evanm's changes to base/SConscript for separate lists of platform-neutral and platform-specific source files and test files. R=evanm,deanm git-svn-id: svn://svn.chromium.org/chrome/trunk/src@727 0039d316-1c4b-4281-b951-d872f2087c98
* Basic string conversions for Linux -- enough to get unit tests going.evanm@google.com2008-08-121-0/+57
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@726 0039d316-1c4b-4281-b951-d872f2087c98
* I accidentally committed file_version_info. Since comments were relatively ↵erikkay@google.com2008-08-127-39/+51
| | | | | | minor, I created a new CL rather than reverting the old one. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@722 0039d316-1c4b-4281-b951-d872f2087c98
* Basic implementation of the clipboard on the Mac.avi@google.com2008-08-124-27/+243
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@717 0039d316-1c4b-4281-b951-d872f2087c98
* Additional cleanups for PRTimeTest. We already have a ↵mmentovai@google.com2008-08-121-18/+11
| | | | | | microseconds-per-milliseconds constant, use it. Do less per-OS #ifdeffing. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@714 0039d316-1c4b-4281-b951-d872f2087c98
* Fix ToUnsigned for 4-byte wchar_t platforms.mmentovai@google.com2008-08-121-0/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@712 0039d316-1c4b-4281-b951-d872f2087c98
* Fix command_line unit test now that argv is no longer const. (Doh!) Remove ↵mmentovai@google.com2008-08-122-12/+11
| | | | | | a technically illegal zero-length array. Fix a couple of warnings for good measure as long as I'm in here. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@701 0039d316-1c4b-4281-b951-d872f2087c98
* Fix build breakage on Windows.evanm@google.com2008-08-121-0/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@692 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the command-line hacks for posix platforms.evanm@google.com2008-08-123-22/+26
| | | | | | | (They didn't work at all on Linux anyway.) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@690 0039d316-1c4b-4281-b951-d872f2087c98
* SCons build updates:sgk@google.com2008-08-121-7/+16
| | | | | | | | | | | | | * Add base\file_util_linux.cc. * Add unit tests base\{idletimer,string_escape}_unittest.cc. * Add chrome\browser\views\hwnd_html_view.cc. * Add chrome\browser\tabs\tab_dragging_test.cc. * Add chrome\browser\views\bookmark_bar_view_test.cc * Add chrome\test\ui\view_event_test_base.cc. * Only define on Windows build of base: _Win32_WINNT=0x0600, WINVER=0x0600, _HAS_EXCEPTIONS=0. TBR: bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@688 0039d316-1c4b-4281-b951-d872f2087c98
* include and turn on more base unit tests.pinkerton@google.com2008-08-121-0/+32
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@686 0039d316-1c4b-4281-b951-d872f2087c98
* bustage fix, include build_config for platform defines.pinkerton@google.com2008-08-111-0/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@684 0039d316-1c4b-4281-b951-d872f2087c98
* Set the svn:eol-style to LF.tc@google.com2008-08-111-76/+76
| | | | | | TBR=evanm git-svn-id: svn://svn.chromium.org/chrome/trunk/src@683 0039d316-1c4b-4281-b951-d872f2087c98
* Expand an internal-only URL to its destination.evanm@google.com2008-08-111-4/+5
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@682 0039d316-1c4b-4281-b951-d872f2087c98
* Stub out defines on non-windows platforms.pinkerton@google.com2008-08-111-0/+14
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@681 0039d316-1c4b-4281-b951-d872f2087c98
* Fix unit tests for posix, fix up mac implementation to work correctly. Add ↵pinkerton@google.com2008-08-112-10/+61
| | | | | | prtime unit test to mac project. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@680 0039d316-1c4b-4281-b951-d872f2087c98
* I came across this when looking at MessageLoop recently.sky@google.com2008-08-111-6/+0
| | | | | | | BUG=none TEST=none; this is just a doc change. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@678 0039d316-1c4b-4281-b951-d872f2087c98
* Remove all the C-style string munging, making this easier to port to Linux.evanm@google.com2008-08-111-55/+42
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@674 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes word_iterator to actually compile. Next time, never just paste code in ↵avi@google.com2008-08-112-6/+9
| | | | | | that _should_ fix things without actually compiling :( git-svn-id: svn://svn.chromium.org/chrome/trunk/src@672 0039d316-1c4b-4281-b951-d872f2087c98
* Remove an illegal const.paulg@google.com2008-08-111-5/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@669 0039d316-1c4b-4281-b951-d872f2087c98
* Move Ranges to std::vector<Sample>, as <const Sample> is invalid if you want ↵deanm@google.com2008-08-111-1/+1
| | | | | | to assign to elements of the vector. This now compiles under GCC. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@667 0039d316-1c4b-4281-b951-d872f2087c98
* Make POSIX time routines work on Linux by providing a POSIX-conformant ↵mmentovai@google.com2008-08-115-59/+76
| | | | | | version of TimeTicks::Now() to replace the Mach-specific one used on the Mac. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@664 0039d316-1c4b-4281-b951-d872f2087c98
* Replace a todo with NOTIMPLEMENTED().ericroman@google.com2008-08-111-2/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@663 0039d316-1c4b-4281-b951-d872f2087c98
* recursive_mutexerikkay@google.com2008-08-116-27/+228
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@650 0039d316-1c4b-4281-b951-d872f2087c98
* Provide cross-platform implementation of WaitableEvent for use on Mac and Linux.darin@google.com2008-08-117-13/+201
| | | | | | | | | I gave the file the suffix _generic since it is implemented entirely in terms of other APIs in base. This CL also adds a simple unit test for WaitableEvent, and I switched some code in thread.cc over to using WaitableEvent. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@648 0039d316-1c4b-4281-b951-d872f2087c98
* Allow multiple AtExitManagers to be chained in a stack, this allows much ↵deanm@google.com2008-08-1110-535/+146
| | | | | | | | | | easier testing for code that is expecting to be run via an AtExitManager. This actually cleaned up a lot of the at exit code. Clean up singleton_dll_unittest. It is no longer windows specific DLL, and now is much simpler, and builds and runs cross platform. BUG=1314043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@646 0039d316-1c4b-4281-b951-d872f2087c98
* Define a private IDMap::iterator, and use our own iterator / const_iterator.deanm@google.com2008-08-111-5/+7
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@645 0039d316-1c4b-4281-b951-d872f2087c98
* HashTable is a dependent name, since it's based on the template parameter T. ↵deanm@google.com2008-08-111-2/+2
| | | | | | Use typename for derived types, this will now build on GCC. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@643 0039d316-1c4b-4281-b951-d872f2087c98
* Remove class scoping operator from Pickle method declaration.deanm@google.com2008-08-111-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@641 0039d316-1c4b-4281-b951-d872f2087c98
* Even though AtExit should never be called while an object is being accessed, ↵deanm@google.com2008-08-111-3/+2
| | | | | | it is cleaner and a bit safer to doing an AtomicExchange, so instance_ is not kept as the pointer value while we're deleting it. This also moves an unsafe direct access to the AtomicWord to calling through the atomic API. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@640 0039d316-1c4b-4281-b951-d872f2087c98
* Add a NOTIMPLEMENTED() macro to annotate the code paths which need ↵ericroman@google.com2008-08-103-0/+78
| | | | | | revisiting for the mac/linux port. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@635 0039d316-1c4b-4281-b951-d872f2087c98
* I suspect this comment was not intended...ericroman@google.com2008-08-104-4/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@634 0039d316-1c4b-4281-b951-d872f2087c98
* rollback the experimentsdarin@google.com2008-08-091-34/+9
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@630 0039d316-1c4b-4281-b951-d872f2087c98
* experiment with APCsdarin@google.com2008-08-091-11/+33
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@629 0039d316-1c4b-4281-b951-d872f2087c98
* just a test...darin@google.com2008-08-091-0/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@628 0039d316-1c4b-4281-b951-d872f2087c98
* A basic wrapper for a windows event object that encapsulates the way we ↵darin@google.com2008-08-094-0/+187
| | | | | | | | often use windows events. This API is not meant to be compatible with ObjectWatcher or MessageLoop::WatchObject. This API is meant to be easily ported to Mac & Linux using a traditional mutex and condition variable pairing. There's nothing to test here since the implementation is such a thin wrapper around Win32 APIs. However, once we go off to implement a posix version, we'll need some tests. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@620 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug 1317458: Busy wait in IPC::SyncChannel::Send in some casesmpcomplete@google.com2008-08-091-6/+7
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@610 0039d316-1c4b-4281-b951-d872f2087c98
* Add deps files and rules for the checkdeps script.brettw@google.com2008-08-083-0/+7
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@600 0039d316-1c4b-4281-b951-d872f2087c98
* Add some extra test cases for whitespace at start/end of number.ericroman@google.com2008-08-081-0/+6
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@598 0039d316-1c4b-4281-b951-d872f2087c98
* pulling in more files to run more unit testspinkerton@google.com2008-08-081-0/+36
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@597 0039d316-1c4b-4281-b951-d872f2087c98
* fix base test harness to work on mac. fix command_line unit tests to match ↵pinkerton@google.com2008-08-084-8/+85
| | | | | | what windows expects. fix base xcode project to separate building and running unit tests into two targets. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@593 0039d316-1c4b-4281-b951-d872f2087c98
* * add base_paths_mac.mm to mac porterikkay@google.com2008-08-0810-71/+644
| | | | | | | | * add file_util_posix.cc to mac port (NOTE: untested on linux) * a bit of cleanup in path_service.cc related to this * a few more cleanups to file_util.cc to make it build for mac git-svn-id: svn://svn.chromium.org/chrome/trunk/src@589 0039d316-1c4b-4281-b951-d872f2087c98
* Stub out unused Windows specific code.paulg@google.com2008-08-082-9/+22
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@588 0039d316-1c4b-4281-b951-d872f2087c98
* MemoryDebug uses size_t, which portably comes from <sys/types.h>. Use ↵mmentovai@google.com2008-08-082-7/+12
| | | | | | "base/basictypes.h" to get it, and clean up a couple other things. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@587 0039d316-1c4b-4281-b951-d872f2087c98
* pull out command_line_unittest until it workspinkerton@google.com2008-08-081-2/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@580 0039d316-1c4b-4281-b951-d872f2087c98
* Remove cruft of old unit test harness, replace it with gTest goodness. Fix ↵pinkerton@google.com2008-08-082-145/+109
| | | | | | extern-ness of a couple of globals in command_line. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@579 0039d316-1c4b-4281-b951-d872f2087c98
* Catch up SCons build with latest changes:sgk@google.com2008-08-081-1/+10
| | | | | | | | | | | Add new *_posix.cc, and condition_variable_win.cc files, replacing old condition_variable.cc file. Additional updates: Remove reference to deleted FontMetrics.cpp. Add word_iterator_unittest.cc. Add two overlooked language .rc files (es-419 and nb). TBR: mmentovai git-svn-id: svn://svn.chromium.org/chrome/trunk/src@576 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leak and assert that the values are correct.tc@google.com2008-08-081-1/+27
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@571 0039d316-1c4b-4281-b951-d872f2087c98
* Add observer_list_unittest.cc to base test target. Fix gcc warnings with ↵pinkerton@google.com2008-08-082-1/+6
| | | | | | virtual methods w/ non-virtual dtor and members being initialized in the init-list in the wrong order. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@569 0039d316-1c4b-4281-b951-d872f2087c98