1. 28 9月, 2010 1 次提交
    • M
      [asp.net] Get rid of a possible (although unlikely) race condition when acquiring locks · 67c7faf2
      Marek Habersack 提交于
      The patch removes a small race condition where a boolean flag is set after acquiring a lock to
      indicate to code executing in the finally {} block that it should release the lock. The boolean
      variable is now removed and the lock is released unconditionally. It carries a potential to
      throw an exception when the lock is not held, but it's better than to fail to release it and
      lead the application to a deadlock.
      67c7faf2
  2. 12 8月, 2010 1 次提交
    • M
      [asp.net] Partial fix for bug #575600. Support opening another app configuration. · 4f20ce19
      Marek Habersack 提交于
      WebConfigurationHost now supports one more parameter passed to it in InitForConfiguration -
      a boolean telling whether the configuration being initialized belongs to another app. If it is
      true then the virtual path passed to InitForConfiguration is used as the application virtual
      path. This has the effect that IsDefinitionAllowed doesn't throw an exception when a configuration
      element with the MachineToApplication level is parsed.
      WebConfigurationManager.FindWebConfig checks whether the path passed to it belongs to this application
      which allows the mechanism described in the first paragraph to work.
      4f20ce19
  3. 09 4月, 2010 1 次提交
  4. 06 3月, 2010 1 次提交
    • M
      commit 9405fa168b1255c51bb31ef17511c05593b08caa · c6c642ee
      Marek Habersack 提交于
      Author: Marek Habersack <mhabersack@novell.com>
      Date:   Sat Mar 6 03:37:53 2010 +0100
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* CompilerCollection.cs: in the 4.0 profile, the latest C#
          	standard is the compiler's default.
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* CSharpCodeCompiler.cs: in the 4.0 profile, the latest C#
          	standard is the default one.
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* RequestValidatorTestGenerated.cs: added
      
          	* RequestValidator.cs: added
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* TestWorkerRequest.cs: added overloads of GetRawUrl and
          	GetUriPath which make sure that the returned paths do not contain
          	more than one leading / character.
      
          	* TestRunItem.cs: added new TestRunData property - to contain
          	per-appdomain test run data.
      
          	* TestCallback.cs: added a TestRunItem parameter.
      
          	* StandaloneTest.cs: runner object is created for each test item
          	now.
          	Added test progress feedback.
      
          	* ITestRunner.cs: added two properties, TestRunData - to return
          	collected test result data, if any, and Domain which returns the
          	current AppDomain.
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* RequestValidatorTest.cs: added
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* HttpRequest.cs: cache RawUrl value.
          	Added new internal property, PathNoValidation, which returns
          	request path without validating it.
          	Implemented 4.0 extensible validation.
      
          	* HttpApplication.cs: Pipeline () validates the request path, if
          	new validation mode is enabled, before doing anything else.
          	Added a generic LoadType overload which checks whether the loaded
          	type, if any, derives from the type specified in the method's
          	specialization.
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* RequestValidator.cs: added
      
          	* RequestValidationSource.cs: added
      
          2010-03-06  Marek Habersack  <mhabersack@novell.com>
      
          	* WebConfigurationManager.cs: do not use Request.Path - it may
          	fail because of invalid web.config file, use
          	Request.PathNoValidation instead.
      
          	* VersionConverter.cs: added
      
          	* PropertyHelper.cs: added a Version converter helper.
      
          	* HttpRuntimeSection.cs: added 4.0 properties -
          	RequestPathInvalidCharacters, RequestValidationType and
          	RequestValidationMode.
      
      svn path=/trunk/mcs/; revision=153172
      c6c642ee
  5. 05 3月, 2010 1 次提交
    • M
      2010-03-04 Marek Habersack <mhabersack@novell.com> · e105f086
      Marek Habersack 提交于
      	* BuildManager.cs: do less work in the static constructor
      
      2010-03-04  Marek Habersack  <mhabersack@novell.com>
      
      	* RuntimeHelpers.cs: added. Contains methods moved here from
      	HttpRuntime, so that initialization sequence of various objects is
      	independent of HttpRuntime.
      
      2010-03-04  Marek Habersack  <mhabersack@novell.com>
      
      	* HttpRuntime.cs: do less work in the static constructor. Most of
      	the code was moved to System.Web.Util.RuntimeHelpers. Properties
      	which have been moved: MonoVersion, RunningOnWindows,
      	CaseInsensitive, IsDebuggingEnabled
      
      Also:
      	- hushed some compiler warnings
      	- various classes now use RuntimeHelpers instead of HttpRuntime
      
      svn path=/trunk/mcs/; revision=153038
      e105f086
  6. 09 1月, 2010 1 次提交
    • M
      2010-01-09 Marek Habersack <mhabersack@novell.com> · 692b3e37
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: GetSection properly handles looking
      	up and caching of <location> instances. Part of fix for bug
      	#568441
      
      	* WebConfigurationHost.cs: GetConfigPathFromLocationSubPath
      	calculatesthe path relative to the current config file path. Part
      	of fix for bug #568441
      
      2010-01-09  Marek Habersack  <mhabersack@novell.com>
      
      	* VirtualPathUtility.cs: small optimizations for GetDirectory
      
      2010-01-09  Marek Habersack  <mhabersack@novell.com>
      
      	* ConfigurationLocation.cs: trailing / characters are removed from
      	the path.
      
      	* Configuration.cs: instances created for locations inherit
      	ConfigPath from their containing document.
      	Host.GetConfigPathFromLocationSubPath must be called with current
      	instance's configPath, not LocationConfigPath.
      	Locations are sought for using paths relative to the current
      	instance's configPath, not to the root path.
      	All of the above is part of fix for bug #568441
      
      svn path=/trunk/mcs/; revision=149262
      692b3e37
  7. 19 11月, 2009 1 次提交
  8. 10 11月, 2009 1 次提交
    • M
      2009-11-10 Marek Habersack <mhabersack@novell.com> · 8b4e17d0
      Marek Habersack 提交于
      	* TemplateParser.cs: AddImports is called from LoadConfigDefaults
      	so that it reads configuration from the correct .config file (it
      	needs to be called after this.VirtualPath has been
      	initialized). Fixes an issue with MVC apps which put configuration
      	in Views/web.config etc. Fixes bug #552457
      
      	* ControlBuilder.cs, Page.cs: system.web/pages section is not
      	confined to the top-level web.config
      
      2009-11-10  Marek Habersack  <mhabersack@novell.com>
      
      	* WebConfigurationManager.cs: path passed to OpenWebConfiguration
      	from GetSection does not come from FindWebConfig.
      
      2009-11-10  Marek Habersack  <mhabersack@novell.com>
      
      	* BaseCompiler.cs: parser.Imports is a Dictionary <>/Hashtable
      	now.
      
      	* AspComponentFoundry.cs: system.web/pages section is not confined
      	to the top-level web.config
      
      svn path=/trunk/mcs/; revision=145831
      8b4e17d0
  9. 09 11月, 2009 1 次提交
    • M
      2009-11-09 Marek Habersack <mhabersack@novell.com> · b01f70a3
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: there's no need to cache sections by
      	_file_ path - using section name and web.config path is more than
      	enough and it reduces the number of cache entries
      	considerably. Fixes bug #550730
      
      svn path=/trunk/mcs/; revision=145721
      b01f70a3
  10. 07 10月, 2009 1 次提交
    • M
      2009-10-07 Marek Habersack <mhabersack@novell.com> · 0ab06466
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: GetSection doesn't perform string +
      	char + string concatenation to generate section cache key (by
      	Gonzalo Paniagua Javier) which gives an enormous performance boost
      	(processing time for mojoportal's default.aspx went down from
      	2.65s to 107ms on average). The key generation is performed
      	without any kind of string operation right now (except for
      	GetHashCode on 3 strings).
      	GetSectionCacheKey is called only once and sectionCache became a
      	dictionary.
      
      svn path=/trunk/mcs/; revision=143611
      0ab06466
  11. 21 8月, 2009 1 次提交
    • M
      2009-08-20 Marek Habersack <mhabersack@novell.com> · 6163d748
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: GetSection does not use
      	FindWebConfig to get the virtual path to open configuration for -
      	doing so would make the configuration system ignore <location>
      	sections. Fixes bug #482181
      
      svn path=/trunk/mcs/; revision=140375
      6163d748
  12. 23 7月, 2009 2 次提交
  13. 15 7月, 2009 1 次提交
    • M
      2009-07-15 Marek Habersack <mhabersack@novell.com> · 4a2ae0bb
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: another approach to suppressing
      	application reloads after the app writes to its root web.config
      	file. Leaving the previous code in place to get more
      	protection. It's a kludge, but it's the best option to avoid
      	all the races caused by System.Configuration+FileSystemWatcher
      	without rewriting large parts of System.Configuration (and
      	System.Web.Configuration). Fixes bug #522017
      
      2009-07-15  Marek Habersack  <mhabersack@novell.com>
      
      	* Configuration.cs: explicitly flush the stream when writing XML
      	data. Part of fix for bug #522017
      
      2009-07-15  Marek Habersack  <mhabersack@novell.com>
      
      	* HttpApplicationFactory.cs: added internal methods to
      	enable/disable specific watchers. Part of fix for bug #522017
      
      svn path=/trunk/mcs/; revision=137951
      4a2ae0bb
  14. 14 7月, 2009 1 次提交
    • M
      2009-07-14 Marek Habersack <mhabersack@novell.com> · 01916d25
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: added support for suppressing
      	application reload when the main config file is written to from
      	application.
      
      	* WebConfigurationHost.cs: added minimal implementation of
      	WriteCompleted, which checks if there's need to suppress
      	application reload.
      
      2009-07-14  Marek Habersack  <mhabersack@novell.com>
      
      	* ConfigurationSaveEventArgs.cs, ConfigurationSaveEventHandler.cs:
      	added
      
      	* Configuration.cs: added two internal events - SaveStart and
      	SaveEnd. They are used by System.Web's configuration system to
      	suppress application reloads when configuration is modified and
      	saved from within a web application. It is necessary to use events
      	since there is no guarantee the web application will use
      	WebConfigurationManager (and thus WebConfigurationHost) for
      	writing.
      
      2009-07-14  Marek Habersack  <mhabersack@novell.com>
      
      	* System.Configuration.dll.sources: added
      	System.Configuration/ConfigurationSaveEventArgs.cs
      	System.Configuration/ConfigurationSaveEventHandler.cs
      
      2009-07-14  Marek Habersack  <mhabersack@novell.com>
      
      	* AssemblyInfo.cs: added InternalsVisibleTo for System.Web
      
      2009-07-14  Marek Habersack  <mhabersack@novell.com>
      
      	* HttpApplicationFactory.cs: OnFileChanged doesn't reload
      	application if reload suppression is active.
      
      svn path=/trunk/mcs/; revision=137847
      01916d25
  15. 10 7月, 2009 1 次提交
  16. 06 6月, 2009 1 次提交
    • M
      2009-06-05 Marek Habersack <mhabersack@novell.com> · 6a261e04
      Marek Habersack 提交于
      	* VirtualPathUtility.cs: IsValidVirtualPath no longer uses
      	WebConfigurationManager.GetSection to retrieve the verification
      	setting. Instead, the setting is retrieved in the static
      	constructor.
      
      	* HttpRequest.cs: ApplyUrlMapping must not use
      	WebConfigurationManager.GetSection as it would cause a recursive
      	call loop. Code to detect whether url mappings are in effect has
      	been moved to a static constructor.
      
      2009-06-05  Marek Habersack  <mhabersack@novell.com>
      
      	* Page.cs: InitializeTheme uses WebConfigurationManager.GetSection
      	to retrieve page theme name. GetWebApplicationSection cannot be
      	used because the system.web/pages section is valid also in
      	subdirectories. Fixes bug #510302
      
      2009-06-05  Marek Habersack  <mhabersack@novell.com>
      
      	* WebConfigurationManager.cs: OpenWebConfiguration caches
      	configurations with a key generated from all the parameters passed
      	to it, not just from path.
      	Added internal GetSection method which takes HttpContext as its
      	third parameter - used in calling OpenWebConfiguration.
      	FindWebConfig is no longer used in GetSection - it breaks handling
      	of <location> elements in config files. Fixes bug #510302
      
      svn path=/trunk/mcs/; revision=135558
      6a261e04
  17. 03 4月, 2009 1 次提交
    • M
      2009-04-03 Marek Habersack <mhabersack@novell.com> · 77667433
      Marek Habersack 提交于
      	* WebConfigurationManager.cs: added code in the static constructor
      	to enable retrieving application settings via
      	ApplicationSettingsBase from within asp.net applications. Fixes
      	bug #491531
      
      	* ApplicationSettingsConfigurationFileMap.cs: added.
      
      2009-04-03  Marek Habersack  <mhabersack@novell.com>
      
      	* CustomizableFileSettingsProvider.cs: added a way for System.Web
      	to specify path to the current Web.config. Fixes bug #491531
      
      svn path=/trunk/mcs/; revision=130909
      77667433
  18. 01 3月, 2009 1 次提交
  19. 28 2月, 2009 1 次提交
  20. 27 2月, 2009 1 次提交
  21. 09 1月, 2009 1 次提交
  22. 08 1月, 2009 1 次提交
  23. 25 12月, 2008 1 次提交
    • M
      2008-12-24 Marek Habersack <mhabersack@novell.com> · a3e3e797
      Marek Habersack 提交于
              * WebConfigurationManager.cs: A better version of the previous
              GetSection fix. Right now the method searches for directories
              containing web.config and uses them, if found, to open the web
              configuration. If no web.config is found, web configuration is
              opened for the root application directory.
      
              * WebConfigurationHost.cs: made GetWebConfigFileName internal
              static, so that code can be reused from WebConfigurationManager.
      
      svn path=/trunk/mcs/; revision=122124
      a3e3e797
  24. 23 12月, 2008 1 次提交
    • M
      2008-12-23 Marek Habersack <mhabersack@novell.com> · ce8461d8
      Marek Habersack 提交于
      	* NunitWeb/Makefile (NunitWeb.dll): added NunitWeb/CustomSection.cs
      
      	* NunitWebResources/CustomSectionEmptyCollection.aspx: added
      
      2008-12-23  Marek Habersack  <mhabersack@novell.com>
      
      	* WebConfigurationManagerTest.cs: added new test.
      
      2008-12-23  Marek Habersack  <mhabersack@novell.com>
      
      	* CustomSection.cs: added. Implementation of custom configuration
      	elements for WebConfigurationManager tests.
      
      2008-12-23  Marek Habersack  <mhabersack@novell.com>
      
      	* Web.mono.config: added CustomTags section definition, used in
      	WebConfiguratioManager tests.
      
      2008-12-23  Marek Habersack  <mhabersack@novell.com>
      
      	* WebConfigurationManager.cs: GetSection should call
      	OpenWebConfiguration using the actual directory path, not a file
      	path. If it fails to do so, System.Configuration may treat the
      	top-level Web.config file as a child one which, in turn, in
      	certain circumstances will lead to duplicate keys inserted in
      	collections.
      
      2008-12-23  Marek Habersack  <mhabersack@novell.com>
      
      	* Makefile (TEST_RESOURCE_FILES): added Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx
      
      	* System.Web_test.dll.sources: added mainsoft/NunitWeb/NunitWeb/CustomSection.cs
      
      svn path=/trunk/mcs/; revision=122024
      ce8461d8
  25. 17 12月, 2008 1 次提交
  26. 16 12月, 2008 1 次提交
  27. 25 11月, 2008 2 次提交
  28. 22 11月, 2008 1 次提交
  29. 20 11月, 2008 1 次提交
  30. 21 10月, 2008 1 次提交
  31. 29 8月, 2008 1 次提交
  32. 18 3月, 2008 1 次提交
  33. 25 2月, 2008 1 次提交
  34. 19 2月, 2008 2 次提交
  35. 07 2月, 2008 1 次提交
  36. 06 1月, 2008 1 次提交
  37. 27 12月, 2007 1 次提交