summaryrefslogtreecommitdiffstats
path: root/chrome_frame
Commit message (Collapse)AuthorAgeFilesLines
* Make new (CTransaction) hooking and sniffing mechanism the default one.stoyan@chromium.org2010-06-242-7/+19
| | | | | | Review URL: http://codereview.chromium.org/2822028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50750 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure that the ChromeFrame reliability and perf tests startup in headless ↵ananta@chromium.org2010-06-236-29/+64
| | | | | | | | | | | | mode and also start crash_service.exe, which would serve as the crash handler for the duration of the test runs. This ensures that the tests don't hang for 60 seconds while unloading the chrome frame dll which waits for the exception handler code to uninitialize which blocks on machines which don't have the official crash server running. Review URL: http://codereview.chromium.org/2810024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50594 0039d316-1c4b-4281-b951-d872f2087c98
* Hopefully the last of the ChromeFrame window open test failures. The ↵ananta@chromium.org2010-06-231-27/+13
| | | | | | | | | | | | DocumentComplete event at times is fired twice by all IE versions for new windows. Updated the expectations to account for this. TBR=stoyan Review URL: http://codereview.chromium.org/2802017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50593 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the randomly failing ChromeFrame window open tests to account for the ↵ananta@chromium.org2010-06-231-17/+8
| | | | | | | | | | | | additional DocumentComplete event fired on IE8 as well on the same lines as IE7. This event fires twice randomly. Modified the expectations to handle this. TBR=stoyan Review URL: http://codereview.chromium.org/2799026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50576 0039d316-1c4b-4281-b951-d872f2087c98
* Some more ChromeFrame test fixes to get the failing IE7 new window tests to ↵ananta@chromium.org2010-06-233-14/+66
| | | | | | | | | | | | pass. On IE7 the DocumentComplete event is fired twice at times for popup windows. We need to add expectations for those. TBR=stoyan Review URL: http://codereview.chromium.org/2809031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50567 0039d316-1c4b-4281-b951-d872f2087c98
* Fix files with svn:executable permissions.thestig@chromium.org2010-06-231-0/+0
| | | | | | | BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50566 0039d316-1c4b-4281-b951-d872f2087c98
* The ChromeFrame JavascriptWindowOpen test tries to open a popup in the ↵ananta@chromium.org2010-06-224-8/+14
| | | | | | | | | | | | | onload notification, which is blocked on IE7/8 by the popup blocker thus causing this test to consistently fail. Fix is to open the popup in the ondblclick notification and to fire dummy mouse down events to the IE window to trigger this event. TBR=amit Review URL: http://codereview.chromium.org/2866013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50458 0039d316-1c4b-4281-b951-d872f2087c98
* In pages rendered in ChromeFrame window open requests or link clicks with ↵ananta@chromium.org2010-06-222-1/+106
| | | | | | | | | | | | | | | | | | | | | target blank which target a different origin should initiate the navigation in the host browser. We achieve this by performing an origin check on the opener frame and the URL being opened. If the origins don't match we allow the host browser to handle this navigation. There is still one issue here as a popup window creation request is still initiated and sent out to the host browser which initiates a dummy attach external tab navigation. Subsequently while applying policy the OpenURL IPC is sent out to the host browser which initiates the navigation to the expected URL. This causes a dummy attach external tab entry to be created in the host browser's history which would have to be deleted. Fixes bug http://code.google.com/p/chromium/issues/detail?id=46667 Bug=46667 Test=Covered by new chrome frame unit test. Review URL: http://codereview.chromium.org/2855017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50416 0039d316-1c4b-4281-b951-d872f2087c98
* Make FixupURL() return a GURL instead of a string (i.e. do fixup + ↵pkasting@chromium.org2010-06-181-3/+2
| | | | | | | | | | | | | | canonicalization). Nearly every caller was already doing this. This in turn allows us to do better fixup/canonicalization of view-source: URLs. We now convert "view-source:google.com" into "view-source:http://google.com/". With a few changes scattered through the omnibox code, this also means we can do HTTP-stripping on view-source: URLs, and support the user typing in things like the case above. This also fixes some weirdness where if you tried to type something starting with "view-source:", the What You Typed match in the dropdown would show only a scheme, or a scheme plus "http:", in some cases. BUG=46612 TEST="view-source:google.com" should work. Review URL: http://codereview.chromium.org/2817011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50290 0039d316-1c4b-4281-b951-d872f2087c98
* The ChromeFrame UMA upload currently occurs every 30 seconds which is ↵ananta@chromium.org2010-06-182-6/+26
| | | | | | | | | | | | | | incorrect. We should emulate Chrome's upload model where there is an initial UMA upload followed by subsequent uploads every 30 minutes. The initial chrome frame UMA upload now occurs after 30 seconds followed by one every 10 minutes. Bug=46057 Review URL: http://codereview.chromium.org/2840010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50249 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an issue with the ChromeFrame protocol patch which shows up in the ↵ananta@chromium.org2010-06-181-1/+2
| | | | | | | | | | | | NavigationToRestrictedSite test. It appears that on IE7 we don't receive the NavigateComplete notification. The protocol patch is now active on the IE7 builder TBR=stoyan Review URL: http://codereview.chromium.org/2835010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50207 0039d316-1c4b-4281-b951-d872f2087c98
* Pref service strings should be std::string.estade@chromium.org2010-06-181-1/+1
| | | | | | | | | | | Part 1: Convert RegisterStringPref. BUG=none TEST=compile Review URL: http://codereview.chromium.org/2809022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50202 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the NavigationToRestrictedSite ChromeFrame test to work with the new ↵ananta@chromium.org2010-06-171-1/+11
| | | | | | | | | | ChromeFrame internet protocol patch. Basically the change is to add an additional BeforeNavigate2 expectation for the error page. Review URL: http://codereview.chromium.org/2842012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50168 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup so that the Chrome Frame Reliability tests don't depend on WebKit.mad@google.com2010-06-171-5/+1
| | | | | | | | | | | | | | If we just remove WebKit, then we have unresolved errors with allocator.lib which can't find snprintf. But adding the renderer dependency fixes it... Don't know why though... Someone should find a better fix later... I also removed other dependencies that didn't have an impact for this project. BUG=0 TEST=Just affects the build, but running the Chrome Frame Tests once in a while wouldn't hurt! :-) Review URL: http://codereview.chromium.org/2870009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50132 0039d316-1c4b-4281-b951-d872f2087c98
* window.open calls issued by pages within ChromeFrame would not honor the ↵ananta@chromium.org2010-06-179-13/+159
| | | | | | | | | | | | | | | | | | | | | | | suggested dimensions and would end up opening a default top level browser window in IE. ChromeFrame does receive the dimensions from the external tab container when it is notified about a popup being opened. Fix is to honor these dimensions by passing them off in the specially crafted url containing other arguments. Fixes bug http://code.google.com/p/chromium/issues/detail?id=42250 This fix is currently implemented for IE full tab mode only. Bug=42250 Test=Covered by augmenting the existing window open test to also validate the window size. Added a new unit test to test the ParseAttachExternalTabUrl helper function. Review URL: http://codereview.chromium.org/2867007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50064 0039d316-1c4b-4281-b951-d872f2087c98
* Add DISABLE_RUNNABLE_METHOD_REFCOUNT to make disabling refcounts in ↵ajwong@chromium.org2010-06-164-27/+7
| | | | | | | | | | | RunnableMethods easier. BUG=none TEST=none Review URL: http://codereview.chromium.org/2830006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49887 0039d316-1c4b-4281-b951-d872f2087c98
* ChromeFrame should allow conditional HTTP headers like if_match, ↵ananta@chromium.org2010-06-164-2/+93
| | | | | | | | | | | | | | | if_modified_since, etc to pass through the host network stack. Filtering out these issues causes POST requests issued by buzz to fail. Fixes bug http://b/issue?id=2321282 Bug=2321282 Test=Covered by ChromeFrame unit test. Review URL: http://codereview.chromium.org/2846005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49880 0039d316-1c4b-4281-b951-d872f2087c98
* Disabling the FullTabModeIE_ContextMenuBackForward ChromeFrame test as it ↵ananta@chromium.org2010-06-161-3/+4
| | | | | | | | | | | | | needs some plumbing in the external tab container to populate the navigation history for the tab contents when it is created. Bug=46615 TBR=amit Review URL: http://codereview.chromium.org/2813009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49879 0039d316-1c4b-4281-b951-d872f2087c98
* Add a net::HttpNetworkDelegate and a ChromeNetworkDelegate.willchan@chromium.org2010-06-151-0/+1
| | | | | | | | | net::HttpNetworkDelegate is an interface for providing hooks into http network activity. ChromeNetworkDelgate implements this interface in chrome/ code. In the future, it might also implement other interfaces. My only current intended consumer for this would be extensions. There's no actual behavior change, this is all just plumbing for now. BUG=29314 Review URL: http://codereview.chromium.org/2749015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49804 0039d316-1c4b-4281-b951-d872f2087c98
* Move the crash metrics to the crash reproting lib to avoid a back dependency ↵mad@google.com2010-06-129-11/+11
| | | | | | | | | | | on Chrome Frame. BUG=0 TEST=none Review URL: http://codereview.chromium.org/2776010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49635 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanups of usage of process_util code.maruel@chromium.org2010-06-111-1/+1
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/2791006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49568 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for uploading UMA metrics data from ChromeFrame. Added support ↵ananta@chromium.org2010-06-1113-29/+860
| | | | | | | | | | | | | | | | for tracking chrome frame crash metrics via 2 new counters which track successful navigations and crashes. These counters are persisted in the registry under HKCU\Software\Google\ChromeFrameMetrics. Any other histogram data like AutomationServer launch time, IE versions etc are simply dropped if IE is shutdown before they are sent out. The metrics data is uploaded on similar lines as Chrome. Bug=46057 Review URL: http://codereview.chromium.org/2714003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49493 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding 49339 jcivelli@chromium.org2010-06-101-2/+0
| | | | | | | | | | | | | It was unjustly reverted due to flaky unit-test failure. Original review: http://codereview.chromium.org/2358003 TBR=ctguil@chromium.org Review URL: http://codereview.chromium.org/2720003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49344 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 49339 - Enable renderer accessibility by default.jcivelli@chromium.org2010-06-101-0/+2
| | | | | | | | | | | | | | It seems to be breaking the ExtensionAPIClientTest.CreateWindowW unit-test. BUG=25564 TEST=none Review URL: http://codereview.chromium.org/2358003 TBR=ctguil@chromium.org Review URL: http://codereview.chromium.org/2782003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49343 0039d316-1c4b-4281-b951-d872f2087c98
* Enable renderer accessibility by default.ctguil@chromium.org2010-06-091-2/+0
| | | | | | | | | BUG=25564 TEST=none Review URL: http://codereview.chromium.org/2358003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49339 0039d316-1c4b-4281-b951-d872f2087c98
* Yet another test web server. Supports speed throttle and dump of the traffic.stoyan@chromium.org2010-06-093-0/+245
| | | | | | | | | | Allows binding on 0.0.0.0 to allow connections from a VM (for example). Simple GMock class and Actions. Review URL: http://codereview.chromium.org/2620006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49266 0039d316-1c4b-4281-b951-d872f2087c98
* A new way of hooking internet protocols.stoyan@chromium.org2010-06-098-708/+698
| | | | | | | | TEST=chrome frame tests Review URL: http://codereview.chromium.org/2620001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49265 0039d316-1c4b-4281-b951-d872f2087c98
* Catch possible out of memory situations when looking for the meta tag.tommi@chromium.org2010-06-081-4/+4
| | | | | | | | | TEST=See bug. BUG=46045 Review URL: http://codereview.chromium.org/2728001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49198 0039d316-1c4b-4281-b951-d872f2087c98
* chrome_frame: Get rid of all occurrences of the deprecated ToWStringHack ↵tfarina@chromium.org2010-06-088-17/+16
| | | | | | | | | | | function. BUG=24874 TEST=trybots Review URL: http://codereview.chromium.org/2632006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49133 0039d316-1c4b-4281-b951-d872f2087c98
* Add Support for window.close in ChromeFrame. Currently the CloseContents ↵ananta@chromium.org2010-06-076-5/+74
| | | | | | | | | | | | | | | | | | notification on the TabContentsDelegate which the ExternalTabContainer implements is ignored if the window close is not initiated from the host. Fix is to send over an automation message AutomationMsg_CloseExternalTab to the external host where we close the window. Currently this functionality is only provided by the active document. Fixes bug http://code.google.com/p/chromium/issues/detail?id=45930 Bug=45930 Test=Covered by chrome frame unit test FullTabModeIE_WindowCloseInChrome Review URL: http://codereview.chromium.org/2691004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49093 0039d316-1c4b-4281-b951-d872f2087c98
* Support multiple PrefStoresmnissler@chromium.org2010-06-071-4/+7
| | | | | | | | | | | | Add interface for multi_pref_store_manager. BUG=40259 TEST=Unittests in pref_service_unittest.cc, pref_value_store_unittest.cc Review URL: http://codereview.chromium.org/1957005 Patch from Markus Heintz <markusheintz@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49048 0039d316-1c4b-4281-b951-d872f2087c98
* chrome_frame: Get rid of all occurrences of file_util::AppendToPath.tfarina@chromium.org2010-06-044-22/+21
| | | | | | | | | BUG=24874 TEST=trybots Review URL: http://codereview.chromium.org/2637001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48976 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for the DELETE method.tommi@chromium.org2010-06-041-1/+2
| | | | | | | | | TEST=See bug description. BUG=45384 Review URL: http://codereview.chromium.org/2675001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48934 0039d316-1c4b-4281-b951-d872f2087c98
* Navigating to a page in ChromeFrame in IE would display the sad tab page ↵ananta@chromium.org2010-06-036-11/+25
| | | | | | | | | | | | | | | briefly until the navigation was initiated from IE. We have code in the ChromeFrame external tab container to initiate the navigation during initialization if we have a valid url passed in while creating the external tab. The URL would not get passed down even though it was available from ChromeFrame. This fixes bug http://code.google.com/p/chromium/issues/detail?id=43482 Bug=43482 Review URL: http://codereview.chromium.org/2600002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48890 0039d316-1c4b-4281-b951-d872f2087c98
* Ensures that cold startup perf tests clear more DLLs. Helps bring results ↵slightlyoff@chromium.org2010-06-031-2/+14
| | | | | | | | | | | into line with worst-case expectations on Vista. BUG=None TeST=run GCF perftests Review URL: http://codereview.chromium.org/2544003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48799 0039d316-1c4b-4281-b951-d872f2087c98
* Rework the logging for sockets/connectjobs.eroman@chromium.org2010-06-031-1/+2
| | | | | | | | | | | | | | | | | | In particular, make it work better when using backup jobs / late binding (the display was very confused before because of how these asynchronous events would nest). Also changed the paradigm for how PassiveLogCollector preserves these async associations -- this fixes how it replays the events to net-internals. (Before we would collapse the event streams into the SOURCE_URL_REQUEST which lost some hiearchy.. now I keep the separate streams). Some of the particular changes to the event streams: * ConnectJobs now create their own source stream internally. * Sockets are now bounded by +SOCKET_ALIVE / -SOCKET_ALIVE events (removed the one-off SOCKET_DONE event). * The socket log streams contains +SOCKET_IN_USE / -SOCKET_IN_USE event blocks to show which URLRequest was controlling it at various points in time (this makes it much easier to understand which read/writes belonged to a particular network transaction when a socket gets re-used). * ConnectJobs are bounded by +SOCKET_POOL_CONNECT_JOB / - SOCKET_POOL_CONNECT_JOB events. * ConnectJobs log the net error they failed with. * Removed the SOCKET_BACKUP_TIMER_EXTENDED event. Review URL: http://codereview.chromium.org/2363003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48797 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome_frame_tests to check that some navigation cases are not broken in IE.kkania@chromium.org2010-06-0210-55/+229
| | | | | | | | | BUG=none TEST=none Original review URL: http://codereview.chromium.org/2173002 Review URL: http://codereview.chromium.org/2375003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48763 0039d316-1c4b-4281-b951-d872f2087c98
* Misc. small cleanups I ran into while working on other changes.pkasting@chromium.org2010-06-021-0/+2
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/2486004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48730 0039d316-1c4b-4281-b951-d872f2087c98
* Add version information to chrome_launcher.exe.robertshield@chromium.org2010-06-022-1/+61
| | | | | | | | | BUG=35036 TEST=Check chrome_launcher.exe properties, check that it has version information. Review URL: http://codereview.chromium.org/2497001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48724 0039d316-1c4b-4281-b951-d872f2087c98
* Implement most of the ridealong fixes/cleanups I suggested during review for ↵pkasting@chromium.org2010-06-014-109/+63
| | | | | | | | | | enabling warn-on-signed-versus-unsigned-equality-comparisions on Windows. BUG=none TEST=none Review URL: http://codereview.chromium.org/2395001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48666 0039d316-1c4b-4281-b951-d872f2087c98
* Use arraysize() instead of ARRAYSIZE_UNSAFE() where possible. Remove ↵pkasting@chromium.org2010-06-011-2/+0
| | | | | | | | | | pointless comment about use of ARRAYSIZE_UNSAFE(). BUG=none TEST=none Review URL: http://codereview.chromium.org/2364003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48663 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid calling CreateWindow while checking for previous instances of Chrome ↵robertshield@chromium.org2010-05-311-38/+8
| | | | | | | | | | | Frame. (Stuff the data in the lpfnWndProc member of the WNDCLASSEX structure instead). BUG=none TEST=none Review URL: http://codereview.chromium.org/2272002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48609 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify Chrome Frame usage of Chrome identifiers by simply using the Chrome ↵pkasting@chromium.org2010-05-288-43/+17
| | | | | | | | | | identifiers directly. This required renaming a few identifiers to avoid macro renaming conflicts when including the Chrome headers. BUG=none TEST=none Review URL: http://codereview.chromium.org/2359002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48543 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 48527 - Add chrome frame tests for common navigation cases to ensure ↵kkania@chromium.org2010-05-2810-232/+55
| | | | | | | | | | | | | IE still works. BUG=none TEST=none Review url: http://codereview.chromium.org/2173002 Review URL: http://codereview.chromium.org/2374002 TBR=kkania@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48529 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome frame tests for common navigation cases to ensure IE still works.kkania@chromium.org2010-05-2810-55/+232
| | | | | | | | | BUG=none TEST=none Review url: http://codereview.chromium.org/2173002 Review URL: http://codereview.chromium.org/2374002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48527 0039d316-1c4b-4281-b951-d872f2087c98
* Correct line endings in chrome_frame_launcher.gyp.robertshield@chromium.org2010-05-281-84/+84
| | | | | | | | | | | BUG=none TEST=gyp works on cygwin on windows TBR=xiyuan Review URL: http://codereview.chromium.org/2379002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48525 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite of chrome_launcher.exe. ETW-based perf tests suggest that this is on ↵robertshield@chromium.org2010-05-2811-261/+516
| | | | | | | | average about 50% faster than the previous version. Review URL: http://codereview.chromium.org/2278003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48500 0039d316-1c4b-4281-b951-d872f2087c98
* Enable warning 4389 as an error on windows builds. This will make mbelshe@chromium.org2010-05-2711-35/+36
| | | | | | | | | | | | windows builds more similar to linux/mac, which already treat signed/ unsigned equality comparisons as warnings (and hence errors). BUG=44471 TEST=none Review URL: http://codereview.chromium.org/2222002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48395 0039d316-1c4b-4281-b951-d872f2087c98
* chrome_frame: Remove several instances of the deprecated wstrings functionstfarina@chromium.org2010-05-276-42/+43
| | | | | | | | | | | and use their FilePath equivalents. BUG=24874 TEST=included Review URL: http://codereview.chromium.org/2125021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48376 0039d316-1c4b-4281-b951-d872f2087c98
* Add a call to SetLastError before calling SetClassLongPtr. It turns out that ↵robertshield@chromium.org2010-05-261-0/+2
| | | | | | | | | | | | SetClasSLongPtr doesn't reset the error code on success and yet said code must be used to check for failure. BUG=45041 TEST=none Review URL: http://codereview.chromium.org/2229003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48277 0039d316-1c4b-4281-b951-d872f2087c98