Changeset 420 for trunk/dll


Ignore:
Timestamp:
Jul 31, 2006, 7:55:32 PM (19 years ago)
Author:
root
Message:

Avoid warnings when editing new definition

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/avv.c

    r404 r420  
    1515  14 Aug 05 SHL rewrite_archiverbb2: avoid dereferencing null signature
    1616  14 Aug 05 SHL ArcReviewDlgProc: ensure signature allocated
    17   29 May 06 SHL EditArchiverData: rework
     17  29 May 06 SHL EditArchiverDefinition: rework
    1818  26 Jun 06 SHL rewrite_archiverbb2: include user comments
    1919  14 Jul 06 SHL Use Runtime_Error
    2020  29 Jul 06 SHL Use xfgets
     21  30 Jul 06 SHL Avoid warnings when editing new definition
    2122
    2223***********************************************************************/
     
    4243static PSZ pszSrcFile = __FILE__;
    4344
    44 #pragma alloc_text(AVV,EditArchiverData,free_and_strdup_from_window)
     45#pragma alloc_text(AVV,EditArchiverDefinition,free_and_strdup_from_window)
    4546#pragma alloc_text(AVV,get_int_from_window,get_int2_from_window)
    4647#pragma alloc_text(AVV,get_long_from_window,get_int3_from_window)
     
    5455static PSZ free_and_strdup_from_window(HWND hwnd,USHORT id,PSZ pszDest);
    5556
    56 //=== EditArchiverData() Select archiver to edit ===
    57 
    58 VOID EditArchiverData(HWND hwnd)
     57//=== EditArchiverDefinition() Select archiver to edit definition ===
     58
     59VOID EditArchiverDefinition(HWND hwnd)
    5960{
    6061  ARCDUMP ad;
     
    8990static PSZ free_and_strdup_from_window(HWND hwnd,USHORT id,PSZ pszDest)
    9091{
    91   char sz[257] = "";
    92 
    93   if (pszDest)
    94     free(pszDest);
    95 
    96   WinQueryDlgItemText(hwnd,
    97                       id,
    98                       255,
    99                       sz);
     92  CHAR sz[256];
     93
     94  xfree(pszDest);
     95  WinQueryDlgItemText(hwnd,id,sizeof(sz),sz);
    10096  if (*sz)
    10197    pszDest = xstrdup(sz, pszSrcFile, __LINE__);
     
    107103static INT get_int_from_window(HWND hwnd,USHORT id)
    108104{
    109   char s[257] = "";
    110 
    111   WinQueryDlgItemText(hwnd,id,255,s);
     105  CHAR s[256];
     106
     107  WinQueryDlgItemText(hwnd,id,sizeof(s),s);
    112108  return atoi(s);
    113109}
     
    115111static INT get_int2_from_window(HWND hwnd,USHORT id)
    116112{
    117   char s[257] = "",*p;
    118 
    119   WinQueryDlgItemText(hwnd,id,255,s);
     113  CHAR s[256];
     114  PSZ p;
     115
     116  WinQueryDlgItemText(hwnd,id,sizeof(s),s);
    120117  p = strchr(s,',');
    121118  if(p)
    122119    p++;
    123   return (p) ? atoi(p) : 0;
     120  return p ? atoi(p) : 0;
    124121}
    125122
    126123INT get_int3_from_window (HWND hwnd,USHORT id)
    127124{
    128   char s[257] = "",*p;
    129 
    130   WinQueryDlgItemText(hwnd,id,255,s);
     125  CHAR s[256];
     126  PSZ p;
     127
     128  WinQueryDlgItemText(hwnd,id,sizeof(s),s);
    131129  p = strchr(s,',');
    132130  if(p) {
     
    136134      p++;
    137135  }
    138   return (p) ? atoi(p) : 0;
     136  return p ? atoi(p) : 0;
    139137}
    140138
    141139INT get_int4_from_window (HWND hwnd,USHORT id)
    142140{
    143   char s[257] = "",*p;
    144 
    145   WinQueryDlgItemText(hwnd,id,255,s);
     141  CHAR s[256];
     142  PSZ p;
     143
     144  WinQueryDlgItemText(hwnd,id,sizeof(s),s);
    146145  p = strchr(s,',');
    147   if(p) {
     146  if (p) {
    148147    p++;
    149148    p = strchr(p,',');
    150     if(p) {
     149    if (p) {
    151150      p++;
    152151      p = strchr(p,',');
    153       if(p)
     152      if (p)
    154153        p++;
    155154    }
    156155  }
    157   return (p) ? atoi(p) : 0;
     156  return p ? atoi(p) : 0;
    158157}
    159158
    160159LONG get_long_from_window (HWND hwnd,USHORT id)
    161160{
    162   char s[257] = "";
    163 
    164   WinQueryDlgItemText(hwnd,id,255,s);
     161  CHAR s[256];
     162
     163  WinQueryDlgItemText(hwnd,id,sizeof(s),s);
    165164  return atol(s);
    166165}
     
    424423  if(!noStart && !noEnd && !badPos && !badList && !badCreate && !badExtract)
    425424    return TRUE;                        // OK
     425  if (!info->id)
     426    return FALSE;                       // Assume new if no id
    426427  saymsg(MB_ENTER | MB_ICONASTERISK,
    427428         hwnd,
     
    484485      WinSetWindowPtr(hwnd,QWL_USER,mp2);
    485486
    486       WinSendDlgItemMsg(hwnd,
    487                         AD_LISTBOX,
    488                         LM_DELETEALL,
    489                         MPVOID,
    490                         MPVOID);
     487      WinSendDlgItemMsg(hwnd,AD_LISTBOX,LM_DELETEALL,MPVOID,MPVOID);
    491488      for(sSelect = AD_ID;sSelect < AD_ADDWPATHS + 1;sSelect++)
    492489      {
     
    497494                          MPVOID);
    498495      }
    499       if (admp->info->id) {
    500         WinSetDlgItemText(hwnd,
    501                           AD_ID,
    502                           admp->info->id);
    503       }
    504       if (admp->info->ext) {
    505         WinSetDlgItemText(hwnd,
    506                           AD_EXT,
    507                           admp->info->ext);
    508       }
    509       sprintf(s,
    510               "%ld",
    511               admp->info->file_offset);
    512       WinSetDlgItemText(hwnd,
    513                         AD_SIGPOS,
    514                         s);
     496      if (admp->info->id)
     497        WinSetDlgItemText(hwnd,AD_ID,admp->info->id);
     498      if (admp->info->ext)
     499        WinSetDlgItemText(hwnd,AD_EXT,admp->info->ext);
     500      sprintf(s,"%ld",admp->info->file_offset);
     501      WinSetDlgItemText(hwnd,AD_SIGPOS,s);
    515502      if (admp->info->siglen) {
    516503        WinSetDlgItemText(hwnd,
     
    521508                                admp->info->siglen));
    522509      }
    523       if (admp->info->startlist) {
    524         WinSetDlgItemText(hwnd,
    525                           AD_STARTLIST,
    526                           admp->info->startlist);
    527       }
    528       if (admp->info->endlist) {
    529         WinSetDlgItemText(hwnd,
    530                           AD_ENDLIST,
    531                           admp->info->endlist);
    532       }
    533       if (admp->info->list) {
    534         WinSetDlgItemText(hwnd,
    535                           AD_LIST,
    536                           admp->info->list);
    537       }
     510      if (admp->info->startlist)
     511        WinSetDlgItemText(hwnd,AD_STARTLIST,admp->info->startlist);
     512      if (admp->info->endlist)
     513        WinSetDlgItemText(hwnd,AD_ENDLIST,admp->info->endlist);
     514      if (admp->info->list)
     515        WinSetDlgItemText(hwnd,AD_LIST,admp->info->list);
    538516      sprintf(s,
    539517              "%d,%d,%d,%d",
     
    570548        WinSetDlgItemText(hwnd,AD_MOVEWPATHS,admp->info->movewdirs);
    571549
    572       PostMsg(hwnd,
    573               UM_SETUP,
    574               MPVOID,
    575               MPVOID);
     550      PostMsg(hwnd,UM_SETUP,MPVOID,MPVOID);
    576551      break;                            // WM_INITDLG
    577552
     
    579554      if(admp->listname && *admp->listname) {
    580555
    581         FILE *fp;
    582 
    583         fp = fopen(admp->listname,"r");
     556        FILE *fp = fopen(admp->listname,"r");
    584557        if(!fp) {
    585558          WinSendDlgItemMsg(hwnd,
     
    590563        }
    591564        else {
    592           while(!feof(fp)) {
     565          while (!feof(fp)) {
    593566            if (!xfgets(s, sizeof(s), fp, pszSrcFile, __LINE__))
    594567              break;
     
    614587
    615588    case WM_ADJUSTWINDOWPOS:
    616       PostMsg(hwnd,
    617               UM_SETDIR,
    618               MPVOID,
    619               MPVOID);
     589      PostMsg(hwnd,UM_SETDIR,MPVOID,MPVOID);
    620590      break;
    621591
     
    673643
    674644            case LN_KILLFOCUS:
    675               WinSetDlgItemText(hwnd,
    676                                 AD_HELP,
    677                                 NullStr);
     645              WinSetDlgItemText(hwnd,AD_HELP,NullStr);
    678646              break;
    679647
     
    946914          {
    947915            INT ok = check_archiver(hwnd,admp->info);
    948             if(saymsg(MB_YESNO,
    949                       hwnd,
    950                       GetPString(IDS_ADCHANGESINMEMTEXT),
    951                       GetPString(IDS_ADREWRITETEXT),
     916            if (saymsg(MB_YESNO,
     917                       hwnd,
     918                       GetPString(IDS_ADCHANGESINMEMTEXT),
     919                       GetPString(IDS_ADREWRITETEXT),
    952920                      !ok ? GetPString(IDS_NOTRECOMMENDTEXT) : NullStr) ==
    953921               MBID_YES) {
Note: See TracChangeset for help on using the changeset viewer.