Based on <https://source.winehq.org/patches/data/238821> by Zhao Yi.
--
v2: ntdll: Correctly handle shift greater than the type width in 64-bit shift functions.
ntdll: Avoid depending on compiler support for 64-bit shift functions.
ntdll/tests: Add tests for runtime 64-bit shift functions.
ntdll: Fix the calling convention for runtime 64-bit shift functions.
https://gitlab.winehq.org/wine/wine/-/merge_requests/375
--
v3: regedit: Directly use RegQueryValueExW() instead of a helper function.
regedit: Correctly calculate REG_MULTI_SZ size before reading from the buffer.
regedit: Remove unneeded valueDataLen override for DWORD values.
https://gitlab.winehq.org/wine/wine/-/merge_requests/392
This simplifies error handling for APIs that just return an error
message.
Signed-off-by: Francois Gouget <fgouget(a)codeweavers.com>
---
testbot/lib/ObjectModel/CGI/Page.pm | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/testbot/lib/ObjectModel/CGI/Page.pm b/testbot/lib/ObjectModel/CGI/Page.pm
index 1df5392930..a8268754ac 100644
--- a/testbot/lib/ObjectModel/CGI/Page.pm
+++ b/testbot/lib/ObjectModel/CGI/Page.pm
@@ -356,6 +356,7 @@ Sets the error …
[View More]message to be shown to the user.
=item ErrMessage
A message to be shown on the page that describes why the form data is invalid.
This should include the display name of the field(s) that need to be fixed.
+If this parameter is false the error message is not modified.
=item ErrField
If the error concerns a specific field, the name of that field. This can be
@@ -363,6 +364,9 @@ used by the page to highlight the field that needs to be corrected.
=back
+Returns the ErrMessage parameter. This allows checking whether an error
+was actually added.
+
=back
=cut
@@ -370,8 +374,12 @@ sub AddError($$;$)
{
my ($self, $ErrMessage, $ErrField) = @_;
- $self->{ErrMessage} = $ErrMessage;
- $self->{ErrField} = $ErrField;
+ if ($ErrMessage)
+ {
+ $self->{ErrMessage} = $ErrMessage;
+ $self->{ErrField} = $ErrField;
+ }
+ return $ErrMessage;
}
# FIXME: For legacy code, to be removed.
--
2.30.2
[View Less]
Signed-off-by: Francois Gouget <fgouget(a)codeweavers.com>
---
testbot/web/FailuresList.pl | 4 ++--
testbot/web/admin/UsersList.pl | 4 ++--
testbot/web/admin/VMsList.pl | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/testbot/web/FailuresList.pl b/testbot/web/FailuresList.pl
index 2cb40c482e..d1f8de6d8e 100644
--- a/testbot/web/FailuresList.pl
+++ b/testbot/web/FailuresList.pl
@@ -138,8 +138,8 @@ sub OnItemAction($$$)
my ($_ErrProperty, $ErrMessage) =…
[View More] $Failure->Save();
if (defined $ErrMessage)
{
- # Setting ErrField is only useful on form pages
- $self->{EnclosingPage}->SetError(undef, $ErrMessage);
+ # Setting the error field is only useful on form pages
+ $self->{EnclosingPage}->AddError($ErrMessage);
return 0;
}
return 1;
diff --git a/testbot/web/admin/UsersList.pl b/testbot/web/admin/UsersList.pl
index 5f9f47b46c..6fdb06d0cf 100644
--- a/testbot/web/admin/UsersList.pl
+++ b/testbot/web/admin/UsersList.pl
@@ -109,8 +109,8 @@ sub OnItemAction($$$)
my ($_ErrProperty, $ErrMessage) = $User->Save();
if (defined $ErrMessage)
{
- # Setting ErrField is only useful on form pages
- $self->{EnclosingPage}->SetError(undef, $ErrMessage);
+ # Setting the error field is only useful on form pages
+ $self->{EnclosingPage}->AddError($ErrMessage);
return 0;
}
diff --git a/testbot/web/admin/VMsList.pl b/testbot/web/admin/VMsList.pl
index 6c3ff2036f..3361c03fa3 100644
--- a/testbot/web/admin/VMsList.pl
+++ b/testbot/web/admin/VMsList.pl
@@ -52,8 +52,8 @@ sub OnItemAction($$$)
my ($_ErrProperty, $ErrMessage) = $VM->Save();
if (defined $ErrMessage)
{
- # Setting ErrField is only useful on form pages
- $self->{EnclosingPage}->SetError(undef, $ErrMessage);
+ # Setting the error field is only useful on form pages
+ $self->{EnclosingPage}->AddError($ErrMessage);
return 0;
}
return 1;
--
2.30.2
[View Less]