From d3e34f97cc128e437e0a5efbc23c88ae251ca5e1 Mon Sep 17 00:00:00 2001 From: ghidra1 Date: Sat, 21 Dec 2024 08:56:31 -0500 Subject: [PATCH] GP-5216 GenericCallingConvention fix --- .../program/model/data/GenericCallingConvention.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/GenericCallingConvention.java b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/GenericCallingConvention.java index cecd440ecb..49cd2acae6 100644 --- a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/GenericCallingConvention.java +++ b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/GenericCallingConvention.java @@ -4,9 +4,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -81,10 +81,16 @@ public enum GenericCallingConvention { /** * Returns the GenericCallingConvention corresponding to the specified * type string or unknown if name is not defined. - * @param callingConvention calling convention declaration name (e.g., "__stdcall") + * @param callingConvention calling convention declaration name (e.g., "__stdcall"). + * Enum name is also allowed for backward compatibility. * @return GenericCallingConvention or {@link #unknown} if not found. */ public static GenericCallingConvention getGenericCallingConvention(String callingConvention) { + for (GenericCallingConvention value : GenericCallingConvention.values()) { + if (value.getDeclarationName().equalsIgnoreCase(callingConvention)) { + return value; + } + } for (GenericCallingConvention value : GenericCallingConvention.values()) { if (value.name().equalsIgnoreCase(callingConvention)) { return value;