misc/libphysfs/lzma/CPP/7zip/UI/Common/DefaultName.cpp
author Wuzzy <Wuzzy2@mail.ru>
Sat, 25 Aug 2018 19:23:19 +0200
changeset 13696 d732ca5dcab9
parent 12213 bb5522e88ab2
permissions -rw-r--r--
GameServer: Refactor fake nick names into Consts

// DefaultName.cpp

#include "StdAfx.h"

#include "DefaultName.h"

static const wchar_t *kEmptyFileAlias = L"[Content]";

UString GetDefaultName2(const UString &fileName, 
    const UString &extension, const UString &addSubExtension)
{
  int extLength = extension.Length();
  int fileNameLength = fileName.Length();
  if (fileNameLength > extLength + 1)
  {
    int dotPos = fileNameLength - (extLength + 1);
    if (fileName[dotPos] == '.')
      if (extension.CompareNoCase(fileName.Mid(dotPos + 1)) == 0)
        return fileName.Left(dotPos) + addSubExtension;
  }
  int dotPos = fileName.ReverseFind(L'.');
  if (dotPos > 0)
    return fileName.Left(dotPos) + addSubExtension;
  return kEmptyFileAlias;
}