Comments (3)
Allocation instrumentation runs the handler when the new bytecode (or equivalent) is called. So, it is handled in that case.
Constructor instrumentation doesn't handle that case. I probably won't have time to add it, although I could take a patch.
from allocation-instrumenter.
How do you imagine it being done, since we can't just insert a try/catch around the constructor body?
from allocation-instrumenter.
I guess I'm not sure I understand the problem. "try" and "catch" and "finally" are source level constructs, not bytecode level ones. In bytecode, you have an exception table that lists ranges of bytecodes, and their associated exception handler. I don't know of anything that would stop you from having an exception handler whose range of bytecode encompasses the entire constructor.
That said, it has been a while since I looked at the spec. Maybe there is something there?
from allocation-instrumenter.
Related Issues (20)
- Support for JDK 11? HOT 9
- Filter/limit instrumentation by package or class name? HOT 1
- JDK11 Compilation Error HOT 3
- Support for jdk13? HOT 4
- Instrumenting constructors fails with VerificationError when interacting with classes that lack stack map frames HOT 10
- I don't understand how to integrate it in a standard Gradle-based project HOT 2
- Comparing with another JVMTI way to hook object allocation HOT 2
- There is a vulnerability in Guava: Google Core Libraries for Java 28.1-android,upgrade recommended
- Dynamic load issue
- allocation-instrumenter breaks JPMS compliant builds
- Update shaded ASM copy to 9.2 to support Java 17 HOT 2
- String created through java makeConcat not reported
- CVE-2022-42920 Critical org.apache.bcel propagated in 3.3.0 google/allocation-instrumenter HOT 1
- Will the instrumenter detect allocations made via JNI? HOT 2
- Failing to instrument classes due to needing ASM9 in Java stdlib HOT 5
- Update Guava version - currently the latest released version 3.3.2 mentions Guava version that has known vulnerability. HOT 2
- Support JVM 21 HOT 4
- Capture the location where the new object is created HOT 2
- Failing while building java-allocation-instrumenter version 3.3.0 using mvn clean install (java-allocation-instrumenter3.3.0) HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from allocation-instrumenter.