Read only archive ; use https://github.com/JacORB/JacORB/issues for new issues
View | Details | Raw Unified | Return to bug 958
Collapse All | Expand All

(-)a/src/org/jacorb/orb/CDROutputStream.java (-4 / +22 lines)
Lines 80-85 public class CDROutputStream Link Here
80
80
81
    private final IBufferManager bufMgr;
81
    private final IBufferManager bufMgr;
82
    protected byte[] buffer;
82
    protected byte[] buffer;
83
    protected boolean own_buffer;
83
84
84
    private boolean closed;
85
    private boolean closed;
85
86
Lines 234-239 public class CDROutputStream Link Here
234
        {
235
        {
235
            buffer = bufMgr.getBuffer(bufferSize);
236
            buffer = bufMgr.getBuffer(bufferSize);
236
        }
237
        }
238
        own_buffer = true;
237
    }
239
    }
238
    /**
240
    /**
239
     * OutputStreams created using this constructor
241
     * OutputStreams created using this constructor
Lines 480-486 public class CDROutputStream Link Here
480
            return;
482
            return;
481
        }
483
        }
482
484
483
        bufMgr.returnBuffer( buffer, true );
485
        if (own_buffer)
486
        {
487
            bufMgr.returnBuffer( buffer, true );
488
        }
484
489
485
        buffer = null;
490
        buffer = null;
486
        closed = true;
491
        closed = true;
Lines 528-537 public class CDROutputStream Link Here
528
                System.arraycopy(buffer, 0, new_buf, 0, pos);
533
                System.arraycopy(buffer, 0, new_buf, 0, pos);
529
            }
534
            }
530
535
531
            // Change buffer size so return the old one.
536
            if (own_buffer)
532
            bufMgr.returnBuffer (buffer, true);
537
            {
538
                // Change buffer size so return the old one.
539
                bufMgr.returnBuffer (buffer, true);
540
            }
533
541
534
            buffer = new_buf;
542
            buffer = new_buf;
543
            own_buffer = true;
535
        }
544
        }
536
    }
545
    }
537
546
Lines 701-709 public class CDROutputStream Link Here
701
     */
710
     */
702
    public void setBuffer(final byte[] b)
711
    public void setBuffer(final byte[] b)
703
    {
712
    {
704
        bufMgr.returnBuffer( buffer, true );
713
        setBuffer (b, true);
714
    }
715
716
    public void setBuffer(final byte[] b, boolean take)
717
    {
718
        if (own_buffer)
719
        {
720
            bufMgr.returnBuffer( buffer, true );
721
        }
705
722
706
        buffer = b;
723
        buffer = b;
724
        own_buffer = take;
707
725
708
        deferredArrayQueue = null;
726
        deferredArrayQueue = null;
709
        pos = 0;
727
        pos = 0;

Return to bug 958