summaryrefslogtreecommitdiffstats
path: root/base/string_util.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fix a bug where we reused a va_list across multiple calls.deanm@chromium.org2009-08-241-9/+9
| | | | | | | | | | | The problem is that va_arg modifies the va_list so that the next call to va_arg returns the next argument. It looks like this code had attempted to not reuse the list by making a copy, but it passed the original instead of the copy. Review URL: http://codereview.chromium.org/174342 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24134 0039d316-1c4b-4281-b951-d872f2087c98
* Print more info in IsStringASCII assertions.phajdan.jr@chromium.org2009-08-201-4/+4
| | | | | | | | | | | This will help debugging when you have only the logs. TEST=none BUG=none Review URL: http://codereview.chromium.org/174110 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23900 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite StringToInt traits for dealing with non-32-bit longs.deanm@chromium.org2009-07-281-29/+45
| | | | | | | Review URL: http://codereview.chromium.org/159510 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21855 0039d316-1c4b-4281-b951-d872f2087c98
* Move base::va_copy from a function to a macro.deanm@chromium.org2009-07-271-2/+2
| | | | | | | | | va_copy is a builtin, you can't just pass it references like we did previously. Review URL: http://codereview.chromium.org/160191 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21706 0039d316-1c4b-4281-b951-d872f2087c98
* Move TrimWhitespaceUTF8 back to string_util_utf8.ccdeanm@chromium.org2009-07-151-14/+0
| | | | | | | | | Apparently it was there for a reason, but wasn't documented. Review URL: http://codereview.chromium.org/155511 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20727 0039d316-1c4b-4281-b951-d872f2087c98
* Move TrimWhitespaceUTF8 from string_util_icu to string_util.deanm@chromium.org2009-07-131-0/+14
| | | | | | | | | It does not directly use ICU, so this is its proper home. Review URL: http://codereview.chromium.org/155415 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20492 0039d316-1c4b-4281-b951-d872f2087c98
* GTK: Implement BlockedPopupContainerView for linux.erg@google.com2009-06-101-0/+4
| | | | | | | | | | | | | | | | This doesn't have: - rounded corners - gradient background - animating in or out. - graphical polish but it is fucntionally complete. http://crbug.com/12843 Review URL: http://codereview.chromium.org/118480 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18113 0039d316-1c4b-4281-b951-d872f2087c98
* add CollapseWhitespaceASCIIrafaelw@chromium.org2009-06-041-4/+15
| | | | | | | | R=erikkay Review URL: http://codereview.chromium.org/119199 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17689 0039d316-1c4b-4281-b951-d872f2087c98
* Move a few functions commonly called with char* to StringPiece.deanm@chromium.org2009-05-291-3/+3
| | | | | | | | | | | In some cases this will avoid the implicit char* -> std::string conversion, object creation, and string copying. One of the biggest benefit is on Windows, where we can save some conversions in FilePath::AppendASCII. Review URL: http://codereview.chromium.org/113996 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17182 0039d316-1c4b-4281-b951-d872f2087c98
* Add JSON-specific escaping, which has different rules from JS ↵erikkay@google.com2009-05-201-29/+0
| | | | | | | | escaping.BUG=http://crbug.com/11431TEST=base_unittests.exe --gtest_filter=StringEscapeTest.Json* Review URL: http://codereview.chromium.org/113606 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16485 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land of earlier NTP theme patch; now with mac and linux compatibility.glen@chromium.org2009-05-151-52/+35
| | | | | | Review URL: http://codereview.chromium.org/115413 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16205 0039d316-1c4b-4281-b951-d872f2087c98
* Add match count text to the GTK find bar. This also makes the bar wider.brettw@chromium.org2009-05-141-0/+4
| | | | | | | | | | | | | | | | The match count text doesn't currently show up realiably because the data in the find reply is bad. I believe this is bug 11761. The clicker checking code has been moved to the cross-platform FindBarController so it doesn't have to be duplicated for each platform. This also add IntToString16. I didnt add all the variants now. The *Wstring versions should all eventually be changed to string16. http://crbug.com/11750 Review URL: http://codereview.chromium.org/114023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16058 0039d316-1c4b-4281-b951-d872f2087c98
* Retry r16006.estade@chromium.org2009-05-141-0/+6
| | | | | | Review URL: http://codereview.chromium.org/113369 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16025 0039d316-1c4b-4281-b951-d872f2087c98
* Undo 16020glen@chromium.org2009-05-141-34/+51
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16021 0039d316-1c4b-4281-b951-d872f2087c98
* Allow the new tab page to be themed (you may want to review DOMUIThemeSource ↵glen@chromium.org2009-05-141-51/+34
| | | | | | | | | | | | | as a whole and not just these changes). Change global std::strings to chars* in browser theme provider. Add ability for ReplaceStringPlaceHolder to take up to 9 replacements. BUG=11235,11685 Review URL: http://codereview.chromium.org/115172 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16020 0039d316-1c4b-4281-b951-d872f2087c98
* revert r16006 due to msvc warning.estade@chromium.org2009-05-131-6/+0
| | | | | | | | TBR=playmobil Review URL: http://codereview.chromium.org/113367 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16007 0039d316-1c4b-4281-b951-d872f2087c98
* Properly convert from UTF8 to UTF16 in WebTextInputImpl.estade@chromium.org2009-05-131-0/+6
| | | | | | | | | String util changes by darin@chromium.org. BUG=11699 Review URL: http://codereview.chromium.org/115215 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16006 0039d316-1c4b-4281-b951-d872f2087c98
* Convert the internal GetStringF to use string16. This saves atc@google.com2009-04-141-27/+27
| | | | | | | | | | | | | | | conversion from string16 to wstring on the linux side when calling GetStringFUTF8 methods. It actually adds extra conversions when calling GetStringF, but we're going to get rid of all those, right? BUG=9911 Review URL: http://codereview.chromium.org/67112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13666 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up another string templatemark@chromium.org2009-03-251-13/+9
| | | | | | Review URL: http://codereview.chromium.org/42591 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12457 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes Issue 7377: Regression: Omnibox trims URL ending with 0x85 (Take 2)hbono@chromium.org2009-03-051-3/+9
| | | | | | | | | This is the same change as "http://codereview.chromium.org/20219/show", which I reverted it because it caused build breaks on sandbox. To investigate this build break, it seems this build break is somehow caused by "base/string_util.cc" that includes the TrimWhiteSpaceUTF8() function. To fix this build break, I moved the TrimWhiteSpaceUTF8() function to "base/string_util_icu.cc". BUG=7377 Review URL: http://codereview.chromium.org/28310 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10970 0039d316-1c4b-4281-b951-d872f2087c98
* Convert NavigationEntry title to string16. TabContents::GetTitle no longer needsbrettw@chromium.org2009-03-041-2/+16
| | | | | | | | | | | | | | | to be virtual, either. This also changes how the display URL is computed. Instead of doing it preemptively, we now do so lazily. This allows us to do the URL formatting correctly using the elider so that we can do IDN and unescaping. I changed string_util's singleton functions. I was worried that other code might make a singleton of string, which would give you this same value as a non-const string. This would mean our empty strings might no longer be empty. Review URL: http://codereview.chromium.org/39022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10872 0039d316-1c4b-4281-b951-d872f2087c98
* revert broken change 10833nsylvain@chromium.org2009-03-031-20/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10837 0039d316-1c4b-4281-b951-d872f2087c98
* Port DictionaryValue to use string16 instead of wstring.dsh@google.com2009-03-031-0/+20
| | | | | | | Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=10818 Review URL: http://codereview.chromium.org/31014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10833 0039d316-1c4b-4281-b951-d872f2087c98
* Revert dsh's change 10818nsylvain@chromium.org2009-03-031-66/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10821 0039d316-1c4b-4281-b951-d872f2087c98
* Port DictionaryValue to use string16 instead of wstring.dsh@google.com2009-03-031-0/+66
| | | | | | Review URL: http://codereview.chromium.org/31014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10818 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGE (except one global std::wstring changed to const wchar_t* ↵maruel@chromium.org2009-03-031-1/+1
| | | | | | | | | | | const per style compliance). Preliminary work to enforce new PRESUBMIT.py rules: - <=80 cols - no trailing whitespaces - svn:eol-style=LF git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10791 0039d316-1c4b-4281-b951-d872f2087c98
* Port Replace(First)SubstringsAfterOffset to string16.dsh@google.com2009-03-031-8/+8
| | | | | | Review URL: http://codereview.chromium.org/28324 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10767 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of wstring variants of StringToFoo.dsh@google.com2009-02-281-27/+57
| | | | | | Review URL: http://codereview.chromium.org/28281 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10664 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert "ASCII <-> UTF16 conversion functions. These are just copies ↵kuchhal@chromium.org2009-02-261-7/+25
| | | | | | | | | | | of WideToASCII and"" This reverts commit 25b05025dae174c94e6de74fa697a3338175f957. Review URL: http://codereview.chromium.org/27243 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10521 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "ASCII <-> UTF16 conversion functions. These are just copies of ↵kuchhal@chromium.org2009-02-261-25/+7
| | | | | | | | | WideToASCII and" Review URL: http://codereview.chromium.org/28217 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10512 0039d316-1c4b-4281-b951-d872f2087c98
* ASCII <-> UTF16 conversion functions. These are just copies of WideToASCII anddarin@chromium.org2009-02-261-7/+25
| | | | | | | | | | ASCIIToWide but they work with string16 instead of wstring. R=brettw Review URL: http://codereview.chromium.org/28189 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10493 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 10456.hbono@chromium.org2009-02-261-23/+3
| | | | | | Review URL: http://codereview.chromium.org/28180 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10458 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes Issue 7377: Regression: Omnibox trims URL ending with 0x85hbono@chromium.org2009-02-261-3/+23
| | | | | | | | | | To fix this issue, this change adds a new function TrimWhitespaceUTF8(), which trims space characters (including non-printable characters and broken UTF-8 characters) from either end of a UTF-8 string. Please feel free to give me your comments since I'm not sure this implimentation is correct. (Maybe this implementation trims too aggressively.) BUG=7377 Review URL: http://codereview.chromium.org/20219 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10456 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce UrlPattern. This is basically me resuming work onaa@chromium.org2009-02-021-0/+25
| | | | | | | | | | | | issue 14106, but as it is a complete rewrite, I have started a new issue. I also added supporting JoinString() and ReplaceAll() utility functions. Review URL: http://codereview.chromium.org/19704 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9031 0039d316-1c4b-4281-b951-d872f2087c98
* moved two private functions into an anonymous namespaceerikkay@google.com2009-01-271-0/+4
| | | | | | Review URL: http://codereview.chromium.org/19017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8747 0039d316-1c4b-4281-b951-d872f2087c98
* Add HexStringToBytes which takes an arbitrary length hex string and creates ↵erikkay@google.com2009-01-271-0/+38
| | | | | | | | a vector of bytes. Review URL: http://codereview.chromium.org/18814 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8716 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify HexEncode.deanm@chromium.org2009-01-221-22/+7
| | | | | | | Review URL: http://codereview.chromium.org/18659 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8450 0039d316-1c4b-4281-b951-d872f2087c98
* Adding a HexEncode function to string_utils.tommi@chromium.org2009-01-221-0/+29
| | | | | | | | This function takes a pointer to a chunk of memory and formats the bytes as hex. Review URL: http://codereview.chromium.org/18452 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8420 0039d316-1c4b-4281-b951-d872f2087c98
* Add a replace_all param to ReplaceSubstringsAfterOffset and update call sites.aa@chromium.org2009-01-211-3/+25
| | | | | | Review URL: http://codereview.chromium.org/18603 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8413 0039d316-1c4b-4281-b951-d872f2087c98
* fix linux build: don't inline in cc filetc@google.com2009-01-121-4/+4
| | | | | | | Review URL: http://codereview.chromium.org/17619 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7894 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the locale parameter from the StringToDouble andtc@google.com2008-11-181-104/+60
| | | | | | | | | | | | DoubleToString methods and only leave the locale independent methods. It turns out this code is only used in the json code and if people want locale formatting, they should use ICU. Review URL: http://codereview.chromium.org/11423 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5585 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the mac build to add dmg_fp to the libbase.a.tony@chromium.org2008-11-151-1/+1
| | | | | | | | | Remove third_party/dmg_fp complete since nothing else depends on it. Review URL: http://codereview.chromium.org/10963 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5525 0039d316-1c4b-4281-b951-d872f2087c98
* fix bug in locale dependence checktc@google.com2008-11-141-1/+1
| | | | | | | | | this caused us to always go down the language independent path Review URL: http://codereview.chromium.org/10713 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5479 0039d316-1c4b-4281-b951-d872f2087c98
* Make unit_tests pass with pt_BR.UTF-8 locale.tc@google.com2008-11-121-38/+109
| | | | | | | | | | | BUG=3675 Patch from Paweł Hajdan jr <phajdan.jr@gmail.com> original issue: http://codereview.chromium.org/9509 Review URL: http://codereview.chromium.org/11002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5319 0039d316-1c4b-4281-b951-d872f2087c98
* This CL adds the autofill UI in forms.jcampan@chromium.org2008-11-051-0/+13
| | | | | | | | | | | | When the user types text in a text field in a form, the renderer queries the browser for suggestion based on the entered text and displays the suggestions in a popup. Listeners are set on the form text field in a similar fashion than for password save. The popup showing the suggestion uses the same mechanism as the select popup. Note that a difference between the select and the autofill popup is that the autofill should not take focus, so the page still has focus and the user can still type in while it shows. The creation of the render widget was modified for that purpose so we can specify the popup should not be focused when shown. Review URL: http://codereview.chromium.org/8885 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4804 0039d316-1c4b-4281-b951-d872f2087c98
* This CL adds prompting for dangerous types of files (executable) when they ↵jcampan@chromium.org2008-10-101-0/+36
| | | | | | | | | | | | | | | | are automatically downloaded. The file is saved with a temporary name (dangerous_download_xxxx.download) in the download directory and the user is presented (in the download shelf and the download tab if opened) with a warning message and buttons to save/discard the download. If discarded the download is removed (and its file deleted). If saved, download goes as usual. Dangerous downloads not confirmed by the user are deleted on shutdown. TEST=Download a small exe file, try using the save/discard button from the download shelf and from the download tab (the intent is that the file has been entirely downloaded by the time you take action). Try again with a slow/big download (that time the download is expected not to be finished when approved/discarded). Review URL: http://codereview.chromium.org/6043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3228 0039d316-1c4b-4281-b951-d872f2087c98
* Add UTF-8 check for JSON deserializer.jungshik@google.com2008-09-251-6/+7
| | | | | | | | | | | Add tests for IsStringUTF8 Make IsStringUTF8 accept std::string/std::wstring rather than char*/wchar_t* Review URL: http://codereview.chromium.org/4268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2610 0039d316-1c4b-4281-b951-d872f2087c98
* Use COMPILE_ASSERT instead of DCHECK for compile-time constant checksmmentovai@google.com2008-08-271-4/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1418 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* crosstool's gcc gives lots of warnings likedkegel@google.com2008-08-211-5/+5
| | | | | | | | "warning: suggest parentheses around && within ||" For base/string_util.cc, just add the suggested parentheses. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1175 0039d316-1c4b-4281-b951-d872f2087c98