Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37510532
en ru br
Репозитории ALT

Группа :: Графические оболочки/KDE
Пакет: sddm

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: alt-sddm-fix-pw-do-not-match.patch
Скачать


diff --git a/sddm-0.14.0/src/auth/AuthRequest.cpp b/sddm-0.14.0/src/auth/AuthRequest.cpp
index 0d82503..abf6049 100644
--- a/sddm-0.14.0/src/auth/AuthRequest.cpp
+++ b/sddm-0.14.0/src/auth/AuthRequest.cpp
@@ -138,20 +138,24 @@ namespace SDDM {
         return NULL;
     }
 
+    void AuthRequest::setPrompts(AuthPrompt::Type type, const QString &data) const {
+        for (AuthPrompt* qap : d->prompts) {
+            if(qap->type()==type) {
+                qap->setResponse(qPrintable(data));
+            }
+        }
+    }
+
     void AuthRequest::setChangeResponse(const QString &currentPwd, const QString &newPassword) {
-        AuthPrompt* prompt;
 
         if(!currentPwd.isNull()) {
-            prompt = findPrompt(AuthPrompt::CHANGE_CURRENT);
-            if(prompt) prompt->setResponse(qPrintable(currentPwd));
+            setPrompts(AuthPrompt::CHANGE_CURRENT, currentPwd);
         }
 
         if(!newPassword.isNull()) {
-            prompt = findPrompt(AuthPrompt::CHANGE_NEW);
-            if(prompt) prompt->setResponse(qPrintable(newPassword));
+            setPrompts(AuthPrompt::CHANGE_NEW, newPassword);
 
-            prompt = findPrompt(AuthPrompt::CHANGE_REPEAT);
-            if(prompt) prompt->setResponse(qPrintable(newPassword));
+            setPrompts(AuthPrompt::CHANGE_REPEAT, newPassword);
         }
     }
 }
diff --git a/sddm-0.14.0/src/auth/AuthRequest.h b/sddm-0.14.0/src/auth/AuthRequest.h
index 15ebe0b..213a8d6 100644
--- a/sddm-0.14.0/src/auth/AuthRequest.h
+++ b/sddm-0.14.0/src/auth/AuthRequest.h
@@ -129,6 +129,8 @@ namespace SDDM {
          */
         AuthPrompt *findPrompt(AuthPrompt::Type type) const;
 
+        void setPrompts(AuthPrompt::Type type, const QString &data) const;
+
     public Q_SLOTS:
         /**
         * Call this slot when all prompts has been filled (with responses) to your satisfaction
diff --git a/sddm-0.14.0/src/helper/backend/PamBackend.cpp b/sddm-0.14.0/src/helper/backend/PamBackend.cpp
index f8bbcdc..87f2b64 100644
--- a/sddm-0.14.0/src/helper/backend/PamBackend.cpp
+++ b/sddm-0.14.0/src/helper/backend/PamBackend.cpp
@@ -32,26 +32,26 @@
 namespace SDDM {
     static Request loginRequest {
         {   { AuthPrompt::LOGIN_USER, QStringLiteral("login:"), false },
-            { AuthPrompt::LOGIN_PASSWORD, QStringLiteral("Password: "), true },
             { AuthPrompt::LOGIN_USER, QStringLiteral("я┐я┤п╣я┌п╫п╟я▐ п╥п╟п©п╦я│я▄:"), false },
+            { AuthPrompt::LOGIN_PASSWORD, QStringLiteral("Password: "), true },
             { AuthPrompt::LOGIN_PASSWORD, QStringLiteral("п÷п╟я─п╬п╩я▄: "), true }
         }
     };
 
     static Request changePassRequest {
         {   { AuthPrompt::CHANGE_CURRENT, QStringLiteral("(current) UNIX password: "), true },
-            { AuthPrompt::CHANGE_NEW, QStringLiteral("New password: "), true },
-            { AuthPrompt::CHANGE_REPEAT, QStringLiteral("Retype new password: "), true },
             { AuthPrompt::CHANGE_CURRENT, QStringLiteral("(я┌п╣п╨я┐я┴п╦п╧) п©п╟я─п╬п╩я▄ UNIX: "), true },
+            { AuthPrompt::CHANGE_NEW, QStringLiteral("New password: "), true },
             { AuthPrompt::CHANGE_NEW, QStringLiteral("п²п╬п╡я▀п╧ п©п╟я─п╬п╩я▄: "), true },
+            { AuthPrompt::CHANGE_REPEAT, QStringLiteral("Retype new password: "), true },
             { AuthPrompt::CHANGE_REPEAT, QStringLiteral("п÷п╬п╡я┌п╬я─п╦я┌п╣ п╡п╡п╬п╢ п©п╟я─п╬п╩я▐: "), true }
         }
     };
 
     static Request changePassNoOldRequest {
         {   { AuthPrompt::CHANGE_NEW, QStringLiteral("New password: "), true },
-            { AuthPrompt::CHANGE_REPEAT, QStringLiteral("Retype new password: "), true },
             { AuthPrompt::CHANGE_NEW, QStringLiteral("п²п╬п╡я▀п╧ п©п╟я─п╬п╩я▄: "), true },
+            { AuthPrompt::CHANGE_REPEAT, QStringLiteral("Retype new password: "), true },
             { AuthPrompt::CHANGE_REPEAT, QStringLiteral("п÷п╬п╡я┌п╬я─п╦я┌п╣ п╡п╡п╬п╢ п©п╟я─п╬п╩я▐: "), true }
         }
     };
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin