Changeset 192 for trunk/src/sh_tiger0.c


Ignore:
Timestamp:
Nov 12, 2008, 12:37:00 AM (16 years ago)
Author:
katerina
Message:

Fixes for cygwin, and improved error diagnostics (tickets #126, #127, #128).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/sh_tiger0.c

    r171 r192  
    223223        if (SL_ISERROR (count))
    224224          {
     225            int error = errno;
     226
    225227            if (sig_termfast == 1) {
    226228              sh_unix_munlock((char *)buffer, (PRIV_MAX)*sizeof(sh_byte));
     
    239241              }
    240242            else
    241               sh_error_handle (ShDFLevel[SH_ERR_T_FILE], FIL__, __LINE__,
    242                                count, MSG_E_READ, tmp);
     243              {
     244                char errbuf[SH_ERRBUF_SIZE];
     245                char errbuf2[SH_ERRBUF_SIZE];
     246                sl_strlcpy(errbuf, sl_error_string(count), sizeof(errbuf));
     247                sh_error_message(error, errbuf2, sizeof(errbuf2));
     248                sh_error_handle (ShDFLevel[SH_ERR_T_FILE], FIL__, __LINE__,
     249                                 count, MSG_E_READ, errbuf, errbuf2, tmp);
     250              }
    243251            SH_FREE(tmp);
    244252            memset (bbuf,   0, 64);
     
    894902      if (SL_ISERROR (n))
    895903        {
     904          int error = errno;
     905
    896906          if (sig_termfast == 1)
    897907            {
     
    909919            }
    910920          else
    911             sh_error_handle (ShDFLevel[SH_ERR_T_FILE], FIL__, __LINE__, n,
    912                              MSG_E_READ, tmp);
     921            {
     922              char errbuf[SH_ERRBUF_SIZE];
     923              char errbuf2[SH_ERRBUF_SIZE];
     924              sl_strlcpy(errbuf, sl_error_string(n), sizeof(errbuf));
     925              sh_error_message(error, errbuf2, sizeof(errbuf2));
     926              sh_error_handle (ShDFLevel[SH_ERR_T_FILE], FIL__, __LINE__, n,
     927                               MSG_E_READ, errbuf, errbuf2, tmp);
     928            }
    913929          SH_FREE(tmp);
    914930          *Length = 0;
     
    14241440      if (SL_ISERROR (n))
    14251441        {
     1442          int error = errno;
     1443
    14261444          if (sig_termfast == 1)
    14271445            {
     
    14411459          else
    14421460            {
     1461              char errbuf[SH_ERRBUF_SIZE];
     1462              char errbuf2[SH_ERRBUF_SIZE];
     1463              sl_strlcpy(errbuf, sl_error_string(n), sizeof(errbuf));
     1464              sh_error_message(error, errbuf2, sizeof(errbuf2));
    14431465              sh_error_handle (ShDFLevel[SH_ERR_T_FILE], FIL__, __LINE__, n,
    1444                                MSG_E_READ, tmp);
     1466                               MSG_E_READ, errbuf, errbuf2, tmp);
    14451467            }
    14461468          SH_FREE(tmp);
Note: See TracChangeset for help on using the changeset viewer.