@Override
    public int forEachByteDesc(ByteProcessor processor) {
        ensureAccessible();
        try {
            return forEachByteDesc0(writerIndex - 1, readerIndex, processor);
        } catch (Exception e) {
            PlatformDependent.throwException(e);
            return -1;
        }
    }
@Test
    public void testForEachByteDescAfterRelease1() {
        assertThrows(IllegalReferenceCountException.class,
                new Executable() {
                    @Override
                    public void execute() {
                        releasedBuffer().forEachByteDesc(0, 1, new TestByteProcessor());
                    }
                });
    }