summaryrefslogtreecommitdiffstats
path: root/base/file_util_posix.cc
Commit message (Collapse)AuthorAgeFilesLines
* Thread IO safety: annotate file_util, and block IO thread from doing IOevan@chromium.org2010-10-231-0/+35
| | | | | | | | | | | | | | | - Mark functions in file_util_posix as requiring permission to perform disk actions. - Mark the IO thread as disallowed from performing disk actions. - Temporarily work around the protections in places where we currently have bugs. BUG=59847,59849,60207,60211,60394 TEST=no dchecks in debug builds Review URL: http://codereview.chromium.org/3872002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63636 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 63600 - Thread IO safety: annotate file_util, and block IO thread ↵isherman@chromium.org2010-10-231-35/+0
| | | | | | | | | | | | | | | | | | | | | | from doing IO Reverting because this breaks the ChromiumOS (dbg) builder. - Mark functions in file_util_posix as requiring permission to perform disk actions. - Mark the IO thread as disallowed from performing disk actions. - Temporarily work around the protections in places where we currently have bugs. BUG=59847,59849,60207,60211 TEST=no dchecks in debug builds Review URL: http://codereview.chromium.org/3872002 TBR=evan@chromium.org Review URL: http://codereview.chromium.org/3983005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63630 0039d316-1c4b-4281-b951-d872f2087c98
* Thread IO safety: annotate file_util, and block IO thread from doing IOevan@chromium.org2010-10-231-0/+35
| | | | | | | | | | | | | | | - Mark functions in file_util_posix as requiring permission to perform disk actions. - Mark the IO thread as disallowed from performing disk actions. - Temporarily work around the protections in places where we currently have bugs. BUG=59847,59849,60207,60211 TEST=no dchecks in debug builds Review URL: http://codereview.chromium.org/3872002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63600 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Thread IO safety: annotate file_util, and block IO thread from doing IO"evan@chromium.org2010-10-221-35/+0
| | | | | | This reverts commit r63580, build breakage. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63586 0039d316-1c4b-4281-b951-d872f2087c98
* Thread IO safety: annotate file_util, and block IO thread from doing IOevan@chromium.org2010-10-221-0/+35
| | | | | | | | | | | | | | | - Mark functions in file_util_posix as requiring permission to perform disk actions. - Mark the IO thread as disallowed from performing disk actions. - Temporarily work around the protections in places where we currently have bugs. BUG=59847,59849,60207,60211 TEST=no dchecks in debug builds Review URL: http://codereview.chromium.org/3872002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63580 0039d316-1c4b-4281-b951-d872f2087c98
* Un-recursify FileEnumerator::Next().dumi@chromium.org2010-10-141-4/+2
| | | | | | | | | | BUG=58368 TEST=file_util_unittest.cc passes Review URL: http://codereview.chromium.org/3751001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62677 0039d316-1c4b-4281-b951-d872f2087c98
* Removing sync from file_util::Delete for ChromeOS.gspencer@chromium.org2010-10-121-3/+0
| | | | | | | | | | | | | | | | | | | | | | This was added to address a problem with SD cards not always deleting files that were deleted from the ChromeOS file browser. Since it doesn't always fix the problem anyhow, and since the file browser isn't in beta, I'm removing the extra sync call, because it increases the time it takes to run recursive delete by about three orders of magnitude, and was slowing down some tests. I've filed bug http://code.google.com/p/chromium-os/issues/detail?id=7196 so we can address this at a later time. [This has already been reviewed and LGTM'd here: http://codereview.chromium.org/3697005/show] BUG=none TEST=ran base unittests Review URL: http://codereview.chromium.org/3706005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62245 0039d316-1c4b-4281-b951-d872f2087c98
* Add a TouchFile() function that takes a FilePath argument.dumi@chromium.org2010-09-231-7/+0
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3496005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60381 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Add a TouchFile function that operates on FilePaths + fixing a bug"maruel@chromium.org2010-09-231-0/+7
| | | | | | | | | | | | This reverts commit 60322. TBR=dumi TEST=none BUG=none Review URL: http://codereview.chromium.org/3439019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60327 0039d316-1c4b-4281-b951-d872f2087c98
* Add a TouchFile function that operates on FilePaths + fixing a bugdumi@chromium.org2010-09-231-7/+0
| | | | | | | | | | | related to FILE_WRITE_ATTRIBUTES on Windows. BUG=none TEST=FileUtilTest::TouchFile Review URL: http://codereview.chromium.org/3404018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60322 0039d316-1c4b-4281-b951-d872f2087c98
* Moving file_util::FileInfo to base::PlatformFileInfo, and adding thedumi@chromium.org2010-09-031-1/+3
| | | | | | | | | | | | last_accessed and creation_time fields. BUG=none TEST=none Review URL: http://codereview.chromium.org/3347005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58454 0039d316-1c4b-4281-b951-d872f2087c98
* Remove some debug switches:skerner@chromium.org2010-07-301-8/+0
| | | | | | | | | | | | | | --issue35198-crxdir-browser --issue35198-permission They were used to understand issue 35198. They are no longer needed. There is one more switch, --issue35198-logging, that is not being removed in this CL. The logging it adds may still be useful. BUG=50604 TEST=manual Review URL: http://codereview.chromium.org/3052023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54323 0039d316-1c4b-4281-b951-d872f2087c98
* posix: print error message when mkdtemp fails.evan@chromium.org2010-07-281-1/+3
| | | | | | | | Failure seen on the buildbots. It would help to know why. Review URL: http://codereview.chromium.org/3067013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54016 0039d316-1c4b-4281-b951-d872f2087c98
* Loosen permission on extension temp dir when a flag is used.skerner@chromium.org2010-07-011-0/+8
| | | | | | | | | | | | | | | | | | | Issue 35198 can not be reproduced locally. To enable users to do experiments, three command line flags are added to chrome: --issue35198-crxdir-browser: Have the browser process create the directory in which the extension will be unzipped. --issue35198-logging: Enable log messages from directory creation in the utility process to be moved to the browser process. --issue35198-permission: Use the most permissive file permissions possible on the extension unpack directory. BUG=35198 TEST=manual Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=51231 Review URL: http://codereview.chromium.org/2802018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51416 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 51231 - Loosen permission on extension temp dir when a flag is used.skerner@chromium.org2010-06-301-9/+1
| | | | | | | | | | | | | | | | | | | | Issue 35198 can not be reproduced locally. To enable users to do experiments, three command line flags are added to chrome: --issue35198-crxdir-browser: Have the browser process create the directory in which the extension will be unzipped. --issue35198-logging: Enable log messages from directory creation in the utility process to be moved to the browser process. --issue35198-permission: Use the most permissive file permissions possible on the extension unpack directory. BUG=35198 TEST=manual Review URL: http://codereview.chromium.org/2802018 TBR=skerner@chromium.org Review URL: http://codereview.chromium.org/2861039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51238 0039d316-1c4b-4281-b951-d872f2087c98
* Loosen permission on extension temp dir when a flag is used.skerner@chromium.org2010-06-301-1/+9
| | | | | | | | | | | | | | | | | Issue 35198 can not be reproduced locally. To enable users to do experiments, three command line flags are added to chrome: --issue35198-crxdir-browser: Have the browser process create the directory in which the extension will be unzipped. --issue35198-logging: Enable log messages from directory creation in the utility process to be moved to the browser process. --issue35198-permission: Use the most permissive file permissions possible on the extension unpack directory. BUG=35198 TEST=manual Review URL: http://codereview.chromium.org/2802018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51231 0039d316-1c4b-4281-b951-d872f2087c98
* Adding sync to be called on ChromeOS after a delete operation has. This ↵dhg@chromium.org2010-06-111-0/+3
| | | | | | | | | | ensures that if the user deleted something on a sd card, its synced right after. BUG=chromium-os:2661 TEST=none Review URL: http://codereview.chromium.org/2735013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49550 0039d316-1c4b-4281-b951-d872f2087c98
* Return NULL instead of false when appropriate.evan@chromium.org2010-06-101-1/+1
| | | | | | | | (Found by clang.) Review URL: http://codereview.chromium.org/2725010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49466 0039d316-1c4b-4281-b951-d872f2087c98
* Changing temporary files on posix to have a . in front so they are hidden on ↵dhg@chromium.org2010-06-101-3/+2
| | | | | | | | | | | linux systems (i.e. chromeos) BUG=chromium-os:3110 TEST=none Review URL: http://codereview.chromium.org/2662005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49413 0039d316-1c4b-4281-b951-d872f2087c98
* Give the extension unpacker process a junction/symlink free path to the ↵skerner@chromium.org2010-06-091-4/+25
| | | | | | | | | | | unpack directory. BUG=35198,13044 TEST=FileUtilTest.NormalizeFilePathBasic,FileUtilTest. NormalizeFilePathReparsePoints,FileUtilTest.NormalizeFilePathSymlinks Review URL: http://codereview.chromium.org/2088006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49337 0039d316-1c4b-4281-b951-d872f2087c98
* Use access instead of stat in PathExists and PathIsWritable.agl@chromium.org2010-05-171-13/+2
| | | | | | | | | | | | | | | | | | This change fixes the issue where PathIsWritable returns the wrong answer when called by the superuser. It also slightly simplifies the code. This fix is helpful for Chrome OS because Chrome OS uses PathIsWritable in backlight-tool TEST=Verified that this change fixes backlight-tool (part of the Chrome OS power manager). BUG=none Patch by davidjames http://codereview.chromium.org/2073005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47418 0039d316-1c4b-4281-b951-d872f2087c98
* Add include as recommended by the linux man page for realpath().skerner@chromium.org2010-05-121-0/+1
| | | | | | Review URL: http://codereview.chromium.org/1985018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47074 0039d316-1c4b-4281-b951-d872f2087c98
* Use realpath() to find the path to the extension unpack dir on posix systems.skerner@chromium.org2010-05-121-0/+10
| | | | | | | | | | | | | Extensions are unpacked by a sandboxed utility process. The sandbox forbids file access outside the directory the extension will be unpacked in. If the path to that directory contains a symbolic link, then unpacking will fail because following the link will cause file system access outside the sandbox path. Use realpath() to get a symlink free path to the directory where the extension will be unpacked. A similar issue exists on windows, with junctions instead of symlinks. This will be fixed in another change. BUG=13044,35198 TEST=FileUtilTest.RealPath Review URL: http://codereview.chromium.org/2001013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47032 0039d316-1c4b-4281-b951-d872f2087c98
* Unpack extensions inside chrome's profile directory.skerner@chromium.org2010-04-301-9/+28
| | | | | | | | | | | Other users of the temp directory will be altered in a subsequent CL. BUG=13044 TEST=SandboxedExtensionUnpackerTest.*, ScopedTempDir.UniqueTempDirUnderPath, FileUtilTest.CreateNewTempDirInDirTest, manual testing on win, linux, mac. Review URL: http://codereview.chromium.org/1582022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46078 0039d316-1c4b-4281-b951-d872f2087c98
* bsd: refactor XDG bits of linux_util into a shared file.evan@chromium.org2010-04-221-0/+20
| | | | | | | | | This allows the shared code to build on the BSDs without them needing to build _linux files. Review URL: http://codereview.chromium.org/1701005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45380 0039d316-1c4b-4281-b951-d872f2087c98
* bsd: move POSIXy functions back into file_util_posixevan@chromium.org2010-04-211-0/+62
| | | | | | | | | This is so the other non-Mac platforms don't need to build file_util_linux. Review URL: http://codereview.chromium.org/1732003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45242 0039d316-1c4b-4281-b951-d872f2087c98
* posix: stat() uses errno, not its return value, for errorsevan@chromium.org2010-03-251-1/+1
| | | | | | | | | | | | | l/stat() always return -1 on error, so we must examine errno if we want to handle errors specially. (This is only used for judging whether to print an error message, so it's not too harmful.) TEST=symlink to nowhere in a dir; Chrome should not complain about that symlink when enumerating files in the directory Review URL: http://codereview.chromium.org/1352001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42647 0039d316-1c4b-4281-b951-d872f2087c98
* POSIX: Handle race conditions in file_util::CreateDirectory where multiple ↵thestig@chromium.org2010-03-171-4/+10
| | | | | | | | | | processes tries to create the same file system tree simultaneously. BUG=38112 TEST=none Review URL: http://codereview.chromium.org/990002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41881 0039d316-1c4b-4281-b951-d872f2087c98
* BSD port changes for base/ (OS_POSIX/GTK instead of OS_LINUXpvalchev@google.com2010-03-101-1/+1
| | | | | | | | where applicable, missing includes, etc) Review URL: http://codereview.chromium.org/774001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41143 0039d316-1c4b-4281-b951-d872f2087c98
* Deprecate GetDirectoryFromPath on non-Windows.evan@chromium.org2010-02-231-12/+0
| | | | | | | | | | | Due to a bunch of changes I made last week, we now only need this in Windows-specific codepaths. BUG=24672 Review URL: http://codereview.chromium.org/654009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39715 0039d316-1c4b-4281-b951-d872f2087c98
* Solaris: Second set adding in Solaris as an OS optionevan@chromium.org2010-02-181-2/+2
| | | | | | | | | | TEST=compiles BUG=30101 Patch by James Choi <jchoi42@pha.jhu.edu>. Review URL: http://codereview.chromium.org/606075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39362 0039d316-1c4b-4281-b951-d872f2087c98
* Actually delete databases in CookiesTreeModel.jochen@chromium.org2010-02-181-1/+9
| | | | | | | | | BUG=34633 TEST=delete a database while it's opened in the renderer Review URL: http://codereview.chromium.org/600104 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39346 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure the parent directory always comes first when listing directories.estade@chromium.org2010-02-111-0/+5
| | | | | | | | | BUG=35288 TEST=see bug Review URL: http://codereview.chromium.org/596054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38854 0039d316-1c4b-4281-b951-d872f2087c98
* linux: check the return value passed through HANDLE_EINTRevan@chromium.org2010-02-021-6/+8
| | | | | | | | | | A smarter compiler (clang) can notice that we were not using the return values being passed through HANDLE_EINTR, which meant most frequently that we were missing checking the return value of close(). Review URL: http://codereview.chromium.org/569003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37786 0039d316-1c4b-4281-b951-d872f2087c98
* OpenBSD/FreeBSD ifdefs and GYP changes for base/pvalchev@google.com2010-01-251-2/+4
| | | | | | | | Based on original work by Sprewell and Ben Laurie on FreeBSD port Review URL: http://codereview.chromium.org/548129 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37063 0039d316-1c4b-4281-b951-d872f2087c98
* Linux, Mac: Don't test parent directories when checking if a path is writable.agl@chromium.org2010-01-211-8/+2
| | | | | | | | | | | | | | This additional check has existed since the code was first written, but wtc queried it in [1] and noted that it doesn't match the Windows version. [1] http://codereview.chromium.org/541022/diff/1/3#newcode309 Removing this additional test doesn't break any unittests so it looks like we can match the Windows code here. http://codereview.chromium.org/545156 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36760 0039d316-1c4b-4281-b951-d872f2087c98
* Changes to base/ from a combination of FreeBSD and OpenBSD patches.evan@chromium.org2009-12-291-4/+5
| | | | | | Review URL: http://codereview.chromium.org/495002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35321 0039d316-1c4b-4281-b951-d872f2087c98
* Improve unit tests to verify that directories are listed before files in ↵vandebo@chromium.org2009-12-111-0/+4
| | | | | | | | | | | | | file:/// urls. And fix current regression. BUG=28420 TEST=improved unit tests Review URL: http://codereview.chromium.org/492015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34382 0039d316-1c4b-4281-b951-d872f2087c98
* file_util: The member variable |pattern_| has a different type (FilePath) ↵thestig@chromium.org2009-12-081-11/+10
| | | | | | | | | | | | | | | from the constructor parameter (StringType). So fix this type to match with the constructor. Original patch by Thiago Farina <thiago.farina@gmail.com> at http://codereview.chromium.org/465119/show BUG=none TEST=none Review URL: http://codereview.chromium.org/466071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34092 0039d316-1c4b-4281-b951-d872f2087c98
* For now, let's clear local storage whenever we clear cookies.jorlow@chromium.org2009-11-261-0/+5
| | | | | | | | BUG=28788 TEST="Clear private data..." from the menu, check cookies, and tell it ok. Data in "Local Storage" inside the profile's data dir should be deleted and any open websites that were using that data should no longer be able to see it. Review URL: http://codereview.chromium.org/441012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33162 0039d316-1c4b-4281-b951-d872f2087c98
* reland 31875. Revert was:estade@chromium.org2009-11-161-33/+9
| | | | | | | | | | | | | | ------ Revert 31875 to see whether it fixes reliability bot. BUG=25677 TEST=None ------ TBR=huanr Review URL: http://codereview.chromium.org/397017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32112 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 31875 to see whether it fixes reliability bot.huanr@chromium.org2009-11-161-9/+33
| | | | | | | | | BUG=25677 TEST=None Review URL: http://codereview.chromium.org/397014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32074 0039d316-1c4b-4281-b951-d872f2087c98
* Use renderer spellchecker for windows.estade@chromium.org2009-11-131-33/+9
| | | | | | | BUG=25677 Review URL: http://codereview.chromium.org/372075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31875 0039d316-1c4b-4281-b951-d872f2087c98
* Move the spellchecker to the renderer.estade@chromium.org2009-11-061-11/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The motivation is that this removes the sync IPC on every call to the spellchecker. Also, currently we spellcheck in the IO thread, which frequently needs to go to disk (in particular, the entire spellcheck dictionary starts paged out), so this will block just the single renderer when that happens, rather than the whole IO thread. This breaks the SpellChecker class into two new classes. 1) On the browser side, we have SpellCheckHost. This class handles browser-wide tasks, such as keeping the custom words list in sync with the on-disk custom words dictionary, downloading missing dictionaries, etc. On Posix, it also opens the bdic file since the renderer isn't allowed to open files. SpellCheckHost is created and destroyed on the UI thread. It is initialized on the file thread. 2) On the renderer side, SpellChecker2. This class will one day be renamed SpellChecker. It handles actual checking of the words, memory maps the dictionary file, loads hunspell, etc. There is one SpellChecker2 per RenderThread (hence one per render process). My intention is for this patch to move Linux to this new approach, and follow up with ports for Windows (which will involve passing a dictionary file name rather than a file descriptor through to the renderer) and Mac (which will involve adding sync ViewHost IPC callsfor when the platform spellchecker is enabled). Note that anyone using the platform spellchecker rather than Hunspell will get no benefit out of this refactor. There should be no loss of functionality for Linux (or any other platform) in this patch. The following should all still work: - dictionary is loaded lazily - hunspell is initialized lazily, per renderer - language changes work. - Dynamic downloading of new dictionaries - auto spell correct works (as well as toggling it). - disabling spellcheck works. - custom words work (including adding in one renderer and immediately having it take effect in other renderers, for certain values of "immediate") TODO: - move spellchecker unit tests to test SpellCheck2 - add sync IPC for platform spellchecker; port to Mac - add dictionary location fallback; port to Windows - remove SpellChecker classes from browser/ BUG=25677 Review URL: http://codereview.chromium.org/357003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31199 0039d316-1c4b-4281-b951-d872f2087c98
* Remove file_util::TrimTrailingSeparators(), which is deprecated andtkent@chromium.org2009-10-151-3/+3
| | | | | | | | | | doesn't work well for Windows root drives. BUG=24722 TEST=existing tests are enough. Review URL: http://codereview.chromium.org/271086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29093 0039d316-1c4b-4281-b951-d872f2087c98
* More CopyDirectory tests and fixesvandebo@chromium.org2009-10-151-9/+26
| | | | | | | | | BUG=themes stopped working on Linux and Mac TEST=unittests Review URL: http://codereview.chromium.org/269083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29076 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate all uses of strerror() in code that uses src/base. strerror() is ↵tschmelcher@chromium.org2009-10-131-4/+3
| | | | | | | | | | | inherently unsafe in multi-threaded apps because it stores the string in a global buffer. It should never be used. If you want to log an error, use PLOG and friends, or if that's too high-level then use safe_strerror(). TEST=built on Linux in 32-bit and 64-bit mode; ran base_unittests in each case; ran Chromium itself in each case; try servers BUG=none Review URL: http://codereview.chromium.org/261055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28850 0039d316-1c4b-4281-b951-d872f2087c98
* Match window's behavior when recursively copying directories that exist.vandebo@chromium.org2009-10-131-2/+11
| | | | | | | | | | | Unit test improvement from here (sgk): http://codereview.chromium.org/271060 BUG=none TEST=unittests Review URL: http://codereview.chromium.org/270086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28838 0039d316-1c4b-4281-b951-d872f2087c98
* Separate out some more ICU from base and into base/i18n.brettw@chromium.org2009-10-081-70/+0
| | | | | | | | | | | | | | | | | | | | This moves string_util_icu. I moved the number formatting function into base/i18n/number_formatting and just removed the other function in string_util_icu which was TrimWhitespaceUTF8. It is only used in a few places and isn't actually helpful (and the fact that it round-trips through UTF-16 is better for the caller to see). This takes out the sorting from the FileEnumerator. The comment says the sorting is not guaranteed. I moved it into file_util_icu as a standalone function for callers of FileEnumerator to call manually if they need sorted results. I modified the directory lister to use this sorting instead, and filed a bug on doing more optimal JS-based sorting. TEST=none BUG=none Review URL: http://codereview.chromium.org/267001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28405 0039d316-1c4b-4281-b951-d872f2087c98
* Copy the relevant parts of ICU to a new file base/third_party/icu/icu_utf.*brettw@chromium.org2009-10-071-0/+1
| | | | | | | | | | | | | | so we can do basic UTF8/16/32 conversions without linking all of ICU. Change callers who used to call SysUTF8ToWide/SysWideToUTF8 in base to using these new functions. I will remove the Sys versions of these functions in a later patch. TEST=none BUG=none Review URL: http://codereview.chromium.org/243102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28219 0039d316-1c4b-4281-b951-d872f2087c98