switch (piInfo->eStatus)\r
{\r
case TPI_PARAM_PASSWORD:\r
- piInfo->szParam = ::wxGetPasswordFromUser(_("Password for:\n") + piInfo->fiInfo.fnFileName.GetFullPath(), wxT("Lychee"), wxEmptyString, this);\r
- if (piInfo->szParam.IsEmpty())\r
+ {\r
+ static wxFileName fnFormer;\r
+ static wxString szFormer;\r
+ if (piInfo->fiInfo.fnFileName == fnFormer)\r
{\r
- this->fCancel = true;\r
+ piInfo->szParam = ::wxGetPasswordFromUser(_("Password for:\n") + piInfo->fiInfo.fnFileName.GetFullPath(), wxT("Lychee"), wxEmptyString, this);\r
+ if (piInfo->szParam.IsEmpty())\r
+ {\r
+ this->fCancel = true;\r
+ }\r
+ szFormer = piInfo->szParam;\r
+ }\r
+ else\r
+ {\r
+ piInfo->szParam = szFormer;\r
+ fnFormer = piInfo->fiInfo.fnFileName;\r
}\r
break;\r
+ }\r
case TPI_PARAM_NEXTVOLUME:\r
{\r
wxFileDialog fd(this, _("Select next volume of: ") + piInfo->fiInfo.fnFileName.GetFullName());\r