Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

static BOOL CRYPT_RemoveStringFromMultiString ( LPWSTR  multi,
LPCWSTR  toRemove 
) [static]

Definition at line 852 of file oid.c.

Referenced by CryptUnregisterDefaultOIDFunction().

00853 {
00854     LPWSTR spotToRemove = (LPWSTR)CRYPT_FindStringInMultiString(multi,
00855      toRemove);
00856     BOOL ret;
00857 
00858     if (spotToRemove)
00859     {
00860         DWORD len = CRYPT_GetMultiStringCharacterLen(multi);
00861 
00862         if (spotToRemove + lstrlenW(toRemove) + 2 >= multi + len)
00863         {
00864             /* Removing last string in list, terminate multi string directly */
00865             *spotToRemove = 0;
00866             *(spotToRemove + 1) = 0;
00867         }
00868         else
00869         {
00870             LPCWSTR nextStr = spotToRemove + lstrlenW(toRemove) + 1;
00871 
00872             /* Copy remainder of string "left" */
00873             memmove(spotToRemove, nextStr,
00874              (len - (nextStr - multi)) * sizeof(WCHAR));
00875         }
00876         ret = TRUE;
00877     }
00878     else
00879     {
00880         SetLastError(ERROR_FILE_NOT_FOUND);
00881         ret = FALSE;
00882     }
00883     return ret;
00884 }


Generated on Fri Feb 10 05:27:54 2012 for ReactOS by doxygen 1.6.3

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.