diff --git a/src/coreclr/vm/domainfile.cpp b/src/coreclr/vm/domainfile.cpp index 944d5268f1c4ee..81767151b627b9 100644 --- a/src/coreclr/vm/domainfile.cpp +++ b/src/coreclr/vm/domainfile.cpp @@ -1838,11 +1838,6 @@ BOOL DomainAssembly::CheckZapDependencyIdentities(PEImage *pNativeImage) } #endif // FEATURE_PREJIT -// @todo .INI file is a temporary workaround for Beta 1 -#define DE_INI_FILE_SECTION_NAME W(".NET Framework Debugging Control") -#define DE_INI_FILE_KEY_TRACK_INFO W("GenerateTrackingInfo") -#define DE_INI_FILE_KEY_ALLOW_JIT_OPTS W("AllowOptimize") - DWORD DomainAssembly::ComputeDebuggingConfig() { CONTRACTL @@ -1857,16 +1852,7 @@ DWORD DomainAssembly::ComputeDebuggingConfig() #ifdef DEBUGGING_SUPPORTED DWORD dacfFlags = DACF_ALLOW_JIT_OPTS; - - if (GetDebuggingOverrides(&dacfFlags)) - { - dacfFlags |= DACF_USER_OVERRIDE; - } - else - { - IfFailThrow(GetDebuggingCustomAttributes(&dacfFlags)); - } - + IfFailThrow(GetDebuggingCustomAttributes(&dacfFlags)); return dacfFlags; #else // !DEBUGGING_SUPPORTED return 0; @@ -1894,137 +1880,6 @@ void DomainAssembly::SetupDebuggingConfig(void) #endif // DEBUGGING_SUPPORTED } -// The format for the (temporary) .INI file is: - -// [.NET Framework Debugging Control] -// GenerateTrackingInfo= where n is 0 or 1 -// AllowOptimize= where n is 0 or 1 - -// Where neither x nor y equal INVALID_INI_INT: -#define INVALID_INI_INT (0xFFFF) - -bool DomainAssembly::GetDebuggingOverrides(DWORD *pdwFlags) -{ - CONTRACTL - { - INSTANCE_CHECK; - THROWS; - GC_NOTRIGGER; - MODE_ANY; - INJECT_FAULT(COMPlusThrowOM();); - } - CONTRACTL_END; - -#if defined(DEBUGGING_SUPPORTED) && !defined(FEATURE_CORESYSTEM) - // TODO FIX in V5.0 - // Any touch of the file system is relatively expensive even in the warm case. - // - // Ideally we remove the .INI feature completely (if we need something put it in the .exe.config file) - // - // However because of compatibility concerns, we won't do this until the next side-by-side release - // In the mean time don't check in the case where we have already loaded the NGEN image, as the - // JIT overrides don't mean anything in that case as we won't be jitting anyway. - // This avoids doing these probes for framework DLLs right away. - if (GetFile()->HasNativeImage()) - return false; - - _ASSERTE(pdwFlags); - - bool fHasBits = false; - WCHAR *pFileName = NULL; - HRESULT hr = S_OK; - UINT cbExtOrValue = 4; - WCHAR *pTail = NULL; - size_t len = 0; - WCHAR *lpFileName = NULL; - - const WCHAR *wszFileName = GetFile()->GetPath(); - - if (wszFileName == NULL) - { - return false; - } - - // lpFileName is a copy of the original, and will be edited. - CQuickBytes qb; - len = wcslen(wszFileName); - size_t cchlpFileName = (len + 1); - lpFileName = (WCHAR*)qb.AllocThrows(cchlpFileName * sizeof(WCHAR)); - wcscpy_s(lpFileName, cchlpFileName, wszFileName); - - pFileName = wcsrchr(lpFileName, W('\\')); - - if (pFileName == NULL) - { - pFileName = lpFileName; - } - - if (*pFileName == W('\\')) - { - pFileName++; //move the pointer past the last '\' - } - - _ASSERTE(wcslen(W(".INI")) == cbExtOrValue); - - if (pFileName == NULL || (pTail=wcsrchr(pFileName, W('.'))) == NULL || (wcslen(pTail)