View Issue Details

IDProjectCategoryView StatusLast Update
0004002Talerwallet (WebExtension)public2019-12-26 21:37
ReporterMarcello Stanisci Assigned ToMarcello Stanisci  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.0Fixed in Version0.0 
Summary0004002: check over/under flows in multiplication between doubles
Descriptiongrep for CHECKOVERUNDERFLOW in wrap.c
TagsNo tags attached.

Activities

Christian Grothoff

2015-11-17 14:19

manager   ~0009912

See also: https://gcc.gnu.org/onlinedocs/gcc/Integer-Overflow-Builtins.html

Marcello Stanisci

2015-12-10 14:02

reporter   ~0009992

addressed in e5aea94..39084f1

The solution in the link above doesn't regard operations on 'double' types.

The following solution has been adopted

c = a * b

if (a<1 || b<1){

  if (c >= max (a, b))
    
    // is overflow

}
else{

  if (c < max (a, b))
    
    // is overflow
}

The solution should catch also underflows, since it simply checks if everything looks normal.

Shall this bug be closed?

Christian Grothoff

2015-12-17 11:47

manager   ~0010009

Determined mathematically that overflow is impossible in this case.

Issue History

Date Modified Username Field Change
2015-10-09 13:48 Marcello Stanisci New Issue
2015-10-09 13:48 Marcello Stanisci Status new => assigned
2015-10-09 13:48 Marcello Stanisci Assigned To => Marcello Stanisci
2015-10-23 01:14 Christian Grothoff Target Version 0.2 => 0.1
2015-11-17 14:18 Christian Grothoff Assigned To Marcello Stanisci => tg
2015-11-17 14:19 Christian Grothoff Note Added: 0009912
2015-11-17 15:30 Christian Grothoff Assigned To tg => Marcello Stanisci
2015-12-10 14:02 Marcello Stanisci Note Added: 0009992
2015-12-10 14:02 Marcello Stanisci Status assigned => feedback
2015-12-17 11:47 Christian Grothoff Note Added: 0010009
2015-12-17 11:47 Christian Grothoff Status feedback => resolved
2015-12-17 11:47 Christian Grothoff Fixed in Version => 0.0
2015-12-17 11:47 Christian Grothoff Resolution open => fixed
2015-12-17 11:48 Christian Grothoff Target Version 0.1 => 0.0
2015-12-17 12:03 Christian Grothoff Status resolved => closed
2019-12-26 21:37 Florian Dold Category wallet (browser-based) => wallet (WebExtensions)
2023-04-13 20:37 Florian Dold Category wallet (WebExtensions) => wallet (WebExtension)