Changeset 25552 for main


Ignore:
Timestamp:
2012-05-09T13:57:28+12:00 (12 years ago)
Author:
sjm84
Message:

We need to check that a key exists before we try to get it otherwise it may cause a seg-fault (problem in the jni code somewhere)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/src/java/org/greenstone/gsdl3/util/GDBMWrapper.java

    r24393 r25552  
    175175            return null;
    176176        }
    177         String s_info;
     177        String s_info = null;
    178178        try
    179179        {
     
    181181            {
    182182                // The key is UTF8: do db lookup using the UTF8 version of key
    183                 s_info = (String) db_.fetch(key.getBytes("UTF-8"));
     183                if (db_.exists(key.getBytes("UTF-8")))
     184                {
     185                    s_info = (String) db_.fetch(key.getBytes("UTF-8"));
     186                }
    184187            }
    185188            catch (UnsupportedEncodingException e)
     
    214217            return false;
    215218        }
    216        
     219
    217220        try
    218221        {
     
    238241            return false;
    239242        }
    240        
     243
    241244        try
    242245        {
     
    249252            return false;
    250253        }
    251        
     254
    252255        return true;
    253256    }
Note: See TracChangeset for help on using the changeset viewer.