aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix insertAuxInitializer may cause inconsistent stack height problemshifujun2023-12-111-2/+1
| | | | | | | | | | | | Usually, constructor only load super class's constructor's init params into stack. After this() or super() called, stack will be empty. If so, we insertAuxInitializer right after this() or super() can reuse max stack size if it enough. But, there is some weird class out there, their constructors load all in-constructor init field value into stack before this() or super() call. In this case, after this() or super() call, stack is not empty, even maybe full. In summary, insertAuxInitializer should increase MaxStack anyway.
* Merge pull request #467 from shifujun/453Shigeru Chiba2023-12-101-3/+0
|\ | | | | Remove DUP check in TransformNewClass
| * Remove DUP check in TransformNewClassshifujun2023-12-081-3/+0
| | | | | | | | | | | | DUP usually come after NEW, but not necessary. #453
* | Merge pull request #448 from catsalty/patch-2Shigeru Chiba2023-12-101-1/+14
|\ \ | | | | | | Fix issue in no-standard [new] instruction replace
| * | Fix issue in no-standard [new] instruction replaceLayHool2023-03-161-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A standard *new* construct bytecode will generate like: ``` new okhttp3/OkHttpClient dup invokespecial okhttp3/OkHttpClient <init> ()V astore 1 ``` but a few part of compiler will generate no-standard bytecode like: ``` new okhttp3/OkHttpClient dup astore 1 invokespecial okhttp3/OkHttpClient <init> ()V ``` which will cause javassist build stack error. This commit will fix it
* | | Fix MemberResolver.lookupMethod bug when super class has more precise matchshifujun2023-12-083-11/+77
| |/ |/| | | | | | | | | | | When onlyExact=false and super class have a more precise match, it should not return with current class's maybe result. New added testSuperCall reveals the problem.
* | fixes GitHub Issue 462 (Internal class issues in the Java 21)wuwen2023-11-034-3/+38
|/
* Issue-#426 Include Automatic-Module-Name in MANIFEST.MF and bump up the ↵Hiroshi Ukai2022-08-302-5/+1
| | | | version to 3.29.2-GA
* for releasing 3.29.1rel_3_29_1_gachibash2022-08-122-2/+2
|
* prohibits too many items from being added to a constant pool.chibash2022-08-072-3/+8
| | | | the previous commit was wrong.
* prohibits too many items from being added to a constant poolchibash2022-08-072-0/+17
|
* prepares for 3.29.0-GA releaserel_3_29_0_gachibash2022-05-132-3/+3
|
* removes an unused import declaration as PR 384 mentions.chibash2022-05-131-1/+0
|
* Merge pull request #382 from tim-hoffman/PR_RemoveStringBufferShigeru Chiba2022-05-1335-118/+121
|\ | | | | Replace StringBuffer with StringBuilder, other minor String optimizations
| * Replace remaining StringBuffer uses with StringBuilderTimothy Hoffman2021-07-161-15/+15
| |
| * Replace StringBuffer with StringBuilder and other minor String optimizationsTimothy Hoffman2021-07-1635-103/+106
| |
* | Merge pull request #383 from tim-hoffman/PR_ArrayCopyPerformanceShigeru Chiba2022-05-132-5/+10
|\ \ | | | | | | Replace array copy loops with System.arraycopy
| * | Replace array copy loop with System.arraycopyTimothy Hoffman2021-07-162-5/+10
| |/
* | uncomments test code suggested by PR405chibash2022-05-131-1/+1
| |
* | cancels PR#391, which does not pass all the testschibash2022-05-131-3/+2
| |
* | fixes a wrong indentationchibash2022-05-131-1/+1
| |
* | Merge pull request #391 from derklaro/fix-method-naming-syntaxShigeru Chiba2022-05-131-2/+3
|\ \ | | | | | | Only wrap the method name if the method doesn't come from the same declaring class
| * | Only wrap the method name if the method doesn't come from the same decl classderklaro2021-09-071-2/+3
| |/
* | does refactoringchibash2022-05-131-92/+130
| |
* | fixes a bug in SignatureAttribute.renameClass().chibash2022-05-131-44/+76
| |
* | fixs a compilation problem although one test still fails.chibash2022-05-122-11/+11
| |
* | Merge branch 'master' into masterShigeru Chiba2022-05-1179-45/+1172
|\ \
| * \ Merge pull request #278 from ximsfei/masterShigeru Chiba2022-05-108-22/+112
| |\ \ | | | | | | | | fixes a bug of ClassFile#renameClass(), some imports could not be successfully renamed.
| | * | add unit testximsfei2019-10-171-4/+8
| | | |
| | * | fixes a bug of ClassFile#renameClass(), some imports could not be ↵ximsfei2019-10-087-18/+104
| | | | | | | | | | | | | | | | successfully renamed
| * | | Merge pull request #390 from derklaro/masterShigeru Chiba2022-05-101-1/+1
| |\ \ \ | | | | | | | | | | Lower requirement for an extra type in constructor to Java 7-
| | * | | Lower requirement for an extra type in constructor to Java 7-derklaro2021-09-071-1/+1
| | | |/ | | |/|
| * | | changes test code because package java.rmi.activation.ActivationGroupDesc ↵chibash2022-05-103-7/+27
| | | | | | | | | | | | | | | | does not exist any longer.
| * | | deletes src/test/test2/*.classchibash2022-05-1051-0/+0
| | | |
| * | | Remove redundant type checkApril Schleck2022-03-311-1/+0
| | | | | | | | | | | | The same condition is repeated twice (caught by FindBugs.)
| * | | Fix for NullPointerException on detach()Burak Şahin2021-09-211-1/+1
| |/ /
| * | updates javassist.Loader to exclude jdk.internal.chibash2021-05-143-2/+3
| | |
| * | release 3.28.0-GArel_3_28_0_gachibash2021-05-081-1/+1
| | |
| * | Merge pull request #306 from nschaefe/masterShigeru Chiba2021-04-264-11/+794
| |\ \ | | | | | | | | fix issue 305: CodeConverter.replaceArrayAccess leads to java.util.ConcurrentModificationException
| | * | fix CodeConverter.replaceArrayAccess leads to ↵User2020-03-244-11/+794
| | | | | | | | | | | | | | | | java.util.ConcurrentModificationException
| * | | Merge pull request #363 from michalkurka/masterShigeru Chiba2021-04-261-6/+19
| |\ \ \ | | | | | | | | | | Fix a race condition in CtClassType#getClassFile3
| | * | | Fix a race condition in CtClassType#getClassFile3michalkurka2021-03-171-6/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | javassist fails to find a class when concurrently running process compresses the class (converts classfile to raw bytes) the idea of the fix is to make sure to only update rawClassfile and classfile under lock in getClassFile3, all other places that modify classfile are already synchronized when reading the object state, we need to read under lock both classfile and rawClassFile otherwise we might get an inconsistent state
| * | | | Merge pull request #351 from sgjesse/issue-350Shigeru Chiba2021-04-262-3/+84
| |\ \ \ \ | | |/ / / | |/| | | | | | | | This fixes Issue #350. Check for extended frame type when updating StackMapTable offset.
| | * | | Check for extended frame type when updating StackTableOffset offsetSøren Gjesse2020-12-142-3/+84
| | | | | | | | | | | | | | | | | | | | Fixes #350
| * | | | fixes typos for #357chibash2021-01-301-2/+2
| | | | |
| * | | | add unit tests for LocalVariableAttribute.variableNameByIndex and ↵eshizhan2021-01-293-1/+8
| | | | | | | | | | | | | | | | | | | | MethodParametersAttribute.parameterName
| * | | | add functions for getting the parameter names of methodeshizhan2021-01-262-0/+24
| |/ / /
| * | | fixes Issue #339chibash2020-10-162-2/+82
| | | |
| * | | updates the version numberchibash2020-07-132-2/+2
| | | |
| * | | fixes a bug of javassist.bytecode.stackmap, which was reported as Issue #328.chibash2020-07-132-2/+30
| | | |