*** icoload.c	Fri Nov 26 18:37:26 2004
--- icoload_fixed.c	Fri Feb 10 17:53:00 2006
***************
*** 279,285 ****
    line = bit / line_width;
    offset = bit % line_width;
  
!   result = (data[line * width32 * 4 + offset/8] & (1 << (7 - (bit % 8))));
  
    return (result ? 1 : 0);
  }
--- 279,285 ----
    line = bit / line_width;
    offset = bit % line_width;
  
!   result = (data[line * width32 * 4 + offset/8] & (1 << (7 - (offset % 8))));
  
    return (result ? 1 : 0);
  }
***************
*** 300,308 ****
    line = nibble / line_width;
    offset = nibble % line_width;
  
!   result = (data[line * width32 * 4 + offset/2] & (0x0F << (4 * (1 - nibble % 2))));
  
!   if (nibble % 2 == 0)
      result = result >> 4;
  
    return result;
--- 300,308 ----
    line = nibble / line_width;
    offset = nibble % line_width;
  
!   result = (data[line * width32 * 4 + offset/2] & (0x0F << (4 * (1 - offset % 2))));
  
!   if (offset % 2 == 0)
      result = result >> 4;
  
    return result;
