jdk/src/java.desktop/share/native/libfontmanager/layout/LETableReference.h
changeset 31691 1a80984cc48f
parent 29908 83e2c403fefd
child 31707 1820e72671e8
equal deleted inserted replaced
31690:3944eaf3322c 31691:1a80984cc48f
   186   LETag getTag() const { return fTag; }
   186   LETag getTag() const { return fTag; }
   187   const LETableReference* getParent() const { return fParent; }
   187   const LETableReference* getParent() const { return fParent; }
   188 
   188 
   189   void addOffset(size_t offset, LEErrorCode &success) {
   189   void addOffset(size_t offset, LEErrorCode &success) {
   190     if(hasBounds()) {
   190     if(hasBounds()) {
   191       if(offset > fLength) {
   191       if(offset >= fLength) {
   192         LE_DEBUG_TR("addOffset off end");
   192         LE_DEBUG_TR("addOffset off end");
   193         success = LE_INDEX_OUT_OF_BOUNDS_ERROR;
   193         success = LE_INDEX_OUT_OF_BOUNDS_ERROR;
   194         return;
   194         return;
   195       } else {
   195       } else {
   196         fLength -= offset;
   196         fLength -= offset;
   201 
   201 
   202   size_t ptrToOffset(const void *atPtr, LEErrorCode &success) const {
   202   size_t ptrToOffset(const void *atPtr, LEErrorCode &success) const {
   203     if(atPtr==NULL) return 0;
   203     if(atPtr==NULL) return 0;
   204     if(LE_FAILURE(success)) return LE_UINTPTR_MAX;
   204     if(LE_FAILURE(success)) return LE_UINTPTR_MAX;
   205     if((atPtr < fStart) ||
   205     if((atPtr < fStart) ||
   206        (hasBounds() && (atPtr > fStart+fLength))) {
   206        (hasBounds() && (atPtr >= fStart+fLength))) {
   207       LE_DEBUG_TR3("ptrToOffset args out of range: %p", atPtr, 0);
   207       LE_DEBUG_TR3("ptrToOffset args out of range: %p", atPtr, 0);
   208       success = LE_INDEX_OUT_OF_BOUNDS_ERROR;
   208       success = LE_INDEX_OUT_OF_BOUNDS_ERROR;
   209       return LE_UINTPTR_MAX;
   209       return LE_UINTPTR_MAX;
   210     }
   210     }
   211     return ((const le_uint8*)atPtr)-fStart;
   211     return ((const le_uint8*)atPtr)-fStart;