# HG changeset patch # User farvidsson # Date 1427461226 -3600 # Fri Mar 27 14:00:26 2015 +0100 # Node ID 6813d9f7f08fef27cafeda115addf3b15e93f4e1 # Parent 483ecfd42109a295cdd38bbe57859593d58f8b26 8076154: com/sun/jdi/InstanceFilter.java failing due to missing MethodEntryRequest calls Summary: Some jdi tests are failing due to missing MethodEntryRequest events during the test execution. Reviewed-by: duke diff --git a/test/com/sun/jdi/InstanceFilter.java b/test/com/sun/jdi/InstanceFilter.java --- a/test/com/sun/jdi/InstanceFilter.java +++ b/test/com/sun/jdi/InstanceFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -104,7 +104,10 @@ return; } if (theThis == null) { - // This happens when the thread has exited. + // This happens when the thread has exited or when a + // static method is called. Setting an instance + // filter does not prevent this event from being + // emitted with a this that is null. methodEntryRequest.disable(); return; } @@ -138,6 +141,10 @@ EventRequestManager mgr = vm().eventRequestManager(); methodEntryRequest = mgr.createMethodEntryRequest(); methodEntryRequest.addInstanceFilter(theInstance); + // Thread filter is needed to prevent MethodEntry events + // to be emitted by the debugee when a static method + // is called on any thread. + methodEntryRequest.addThreadFilter(bpe.thread()); methodEntryRequest.enable(); listenUntilVMDisconnect();