Changeset 2111


Ignore:
Timestamp:
01/17/07 10:25:16 (13 years ago)
Author:
melissa
Message:

Make sure pixel arrays are the correct size.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/plugins/Importer.java

    r2109 r2111  
    635635            if (pixels instanceof byte[]) { 
    636636              byte[] bytes = (byte[]) pixels; 
    637               if (bytes.length > w*h*c) { 
     637              if (bytes.length > w*h) { 
    638638                byte[] tmp = bytes; 
    639                 bytes = new byte[w*h*c]; 
     639                bytes = new byte[w*h]; 
    640640                System.arraycopy(tmp, 0, bytes, 0, bytes.length); 
    641641              } 
     
    647647            else if (pixels instanceof short[]) { 
    648648              short[] s = (short[]) pixels; 
    649               if (s.length > w*h*c) { 
     649              if (s.length > w*h) { 
    650650                short[] tmp = s; 
    651                 s = new short[w*h*c]; 
     651                s = new short[w*h]; 
    652652                System.arraycopy(tmp, 0, s, 0, s.length); 
    653653              } 
     
    659659            else if (pixels instanceof int[]) { 
    660660              int[] s = (int[]) pixels; 
    661               if (s.length > w*h*c) { 
     661              if (s.length > w*h) { 
    662662                int[] tmp = s; 
    663                 s = new int[w*h*c]; 
     663                s = new int[w*h]; 
    664664                System.arraycopy(tmp, 0, s, 0, s.length); 
    665665              } 
     
    671671            else if (pixels instanceof float[]) { 
    672672              float[] f = (float[]) pixels; 
    673               if (f.length > w*h*c) { 
     673              if (f.length > w*h) { 
    674674                float[] tmp = f; 
    675                 f = new float[w*h*c]; 
     675                f = new float[w*h]; 
    676676                System.arraycopy(tmp, 0, f, 0, f.length); 
    677677              } 
     
    723723            else if (pixels instanceof double[]) { 
    724724              double[] d = (double[]) pixels; 
    725               if (d.length > w*h*c) { 
     725              if (d.length > w*h) { 
    726726                double[] tmp = d; 
    727                 d = new double[w*h*c]; 
     727                d = new double[w*h]; 
    728728                System.arraycopy(tmp, 0, d, 0, d.length); 
    729729              } 
Note: See TracChangeset for help on using the changeset viewer.