Browse Source

* Patch from Thierry Gayet to fix double prefix when using aliases

Michaël Van Canneyt 1 year ago
parent
commit
b1312ed3c6
1 changed files with 4 additions and 1 deletions
  1. 4 1
      packages/webidl/src/webidltowasmjob.pp

+ 4 - 1
packages/webidl/src/webidltowasmjob.pp

@@ -160,7 +160,10 @@ begin
     Result:=copy(Result,length(ClassPrefix)+1,length(Result)-length(ClassPrefix)-length(ClassSuffix));
     Result:=copy(Result,length(ClassPrefix)+1,length(Result)-length(ClassPrefix)-length(ClassSuffix));
   if Result='' then
   if Result='' then
     raise EConvertError.Create('[20220725184518]');
     raise EConvertError.Create('[20220725184518]');
-  Result:=PasInterfacePrefix+Result+PasInterfaceSuffix;
+  if LeftStr(Result,length(PasInterfacePrefix)) <> PasInterfacePrefix then
+    Result:=PasInterfacePrefix+Result;
+  if RightStr(Result,length(PasInterfaceSuffix)) <> PasInterfaceSuffix then
+    Result:=Result+PasInterfaceSuffix;
 end;
 end;
 
 
 function TWebIDLToPasWasmJob.IntfToPasClassName(const aName: TIDLString): TIDLString;
 function TWebIDLToPasWasmJob.IntfToPasClassName(const aName: TIDLString): TIDLString;