42 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
42 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
43 * POSSIBILITY OF SUCH DAMAGE. |
43 * POSSIBILITY OF SUCH DAMAGE. |
44 */ |
44 */ |
45 |
45 |
46 #include "ucx/ucx.h" |
46 #include "ucx/ucx.h" |
|
47 |
|
48 int ucx_szmul_impl(size_t a, size_t b, size_t *result) { |
|
49 if(a == 0 || b == 0) { |
|
50 *result = 0; |
|
51 return 0; |
|
52 } |
|
53 size_t r = a * b; |
|
54 if(r / b == a) { |
|
55 *result = r; |
|
56 return 0; |
|
57 } else { |
|
58 *result = 0; |
|
59 return 1; |
|
60 } |
|
61 } |
|
62 |