Changeset 3217 in CLRX


Ignore:
Timestamp:
Jun 28, 2017, 8:01:55 PM (3 years ago)
Author:
matszpk
Message:

CLRadeonExtender: samples: fixed retrieving versions from device version and device name.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CLRadeonExtender/trunk/samples/CLUtils.cpp

    r3215 r3217  
    284284                const char* end;
    285285                cxuint majorVersion = cstrtoui(majorVerPart, nullptr, minorVerPart);
    286                 minorVerPart++; // skip '.'
    287                 cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
    288                 llvmVersion = majorVersion*10000U + minorVersion*100U;
     286                if (*minorVerPart!=0)
     287                {
     288                    minorVerPart++; // skip '.'
     289                    cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
     290                    llvmVersion = majorVersion*10000U + minorVersion*100U;
    289291#if HAVE_64BIT
    290                 if (majorVersion*10000U + minorVersion*100U >= 30900U)
    291                     bits = 64; // use 64-bit
     292                    if (majorVersion*10000U + minorVersion*100U >= 30900U)
     293                        bits = 64; // use 64-bit
    292294#endif
     295                }
    293296            }
    294297            catch(const ParseException& ex)
     
    307310                const char* end;
    308311                cxuint majorVersion = cstrtoui(majorVerPart, nullptr, minorVerPart);
    309                 minorVerPart++; // skip '.'
    310                 cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
    311                 mesaVersion = majorVersion*10000U + minorVersion*100U;
     312                if (*minorVerPart!=0)
     313                {
     314                    minorVerPart++; // skip '.'
     315                    cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
     316                    mesaVersion = majorVersion*10000U + minorVersion*100U;
     317                }
    312318            }
    313319            catch(const ParseException& ex)
     
    326332                const char* end;
    327333                cxuint majorVersion = cstrtoui(majorVerPart, nullptr, minorVerPart);
    328                 minorVerPart++; // skip '.'
    329                 cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
    330                 amdappVersion = majorVersion*100U + minorVersion;
     334                if (*minorVerPart!=0)
     335                {
     336                    minorVerPart++; // skip '.'
     337                    cxuint minorVersion = cstrtoui(minorVerPart, nullptr, end);
     338                    amdappVersion = majorVersion*100U + minorVersion;
     339                }
    331340            }
    332341            catch(const ParseException& ex)
Note: See TracChangeset for help on using the changeset viewer.