Openbravo Issue Tracking System - Retail Modules
View Issue Details
0041456Retail ModulesWeb POSpublic2019-07-25 11:432023-08-01 06:31
guillermogil 
alekosmp86 
normalmajoralways
closedfixed 
5
 
RR19Q4 
marvintm
No
0041456: Missing check of callback is a function in failover
Missing check of callback is a function in failover then it tries to execute it event if it those not exists.
Having a Process type failover without callbacks
Make it fail on the server

You will see an stacktrace:
c93333d190a066191b4714ea79085f65.js:formatted:1243 Uncaught TypeError: oldcallbackError is not a function
    at callbackError (c93333d190a066191b4714ea79085f65.js:formatted:1243)
    at serviceError (c93333d190a066191b4714ea79085f65.js:formatted:1053)
    at Object.fail [as origFail] (c93333d190a066191b4714ea79085f65.js:formatted:1107)
    at Object.ajaxRequest.fail (c93333d190a066191b4714ea79085f65.js:formatted:1835)
    at Object.timeoutComplete (enyo.js:900)
  OB.DS.Process.FailOver.prototype.exec = function (params, callback, callbackError, async, timeout) {
    var process = new OB.DS.Process(this.source),
        oldCallback = callback,
        oldcallbackError = callbackError;
    callback = function (data) {
      OB.MobileApp.model.hideSynchronizingDialog();
      oldCallback(data);
    };
    callbackError = function (data) {
      OB.MobileApp.model.hideSynchronizingDialog();
      oldcallbackError(data);
    };
    OB.MobileApp.model.showSynchronizingDialog();
    process.exec(params, callback, callbackError, async, timeout);
  };

should be:
  OB.DS.Process.FailOver.prototype.exec = function (params, callback, callbackError, async, timeout) {
    var process = new OB.DS.Process(this.source),
        oldCallback = callback,
        oldCallbackError = callbackError;
    callback = function (data) {
      OB.MobileApp.model.hideSynchronizingDialog();
      if (oldCallback && oldCallback instanceof Function) {
        oldCallback(data);
      }
    };
    callbackError = function (data) {
      OB.MobileApp.model.hideSynchronizingDialog();
      if (oldCallbackError && oldCallbackError instanceof Function) {
        oldCallbackError(data);
      } else if (oldCallback && oldCallback instanceof Function) {
        oldCallback(data);
      }
    };
    OB.MobileApp.model.showSynchronizingDialog();
    process.exec(params, callback, callbackError, async, timeout);
  };
No tags attached.
Issue History
2019-07-25 11:43guillermogilNew Issue
2019-07-25 11:43guillermogilAssigned To => Retail
2019-07-25 11:43guillermogilResolution time => 1565474400
2019-07-25 11:43guillermogilTriggers an Emergency Pack => No
2019-07-25 11:48guillermogilProposed Solution updated
2019-07-25 11:53aaroncaleroProposed Solution updated
2019-08-01 20:55alekosmp86Assigned ToRetail => alekosmp86
2019-08-02 20:15hgbotCheckin
2019-08-02 20:15hgbotNote Added: 0113795
2019-08-02 20:15hgbotStatusnew => resolved
2019-08-02 20:15hgbotResolutionopen => fixed
2019-08-02 20:15hgbotFixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/4ed8e628a232ef3833f94b1e74f17b5ab46fb755 [^]
2019-08-07 07:48marvintmReview Assigned To => marvintm
2019-08-07 07:48marvintmStatusresolved => closed
2019-08-07 07:48marvintmFixed in Version => RR19Q4
2023-07-06 06:16manropezapNote Added: 0152151
2023-07-06 06:38priyamNote Deleted: 0152151
2023-08-01 06:31biuopomeNote Added: 0153040

Notes
(0113795)
hgbot   
2019-08-02 20:15   
Repository: erp/pmods/org.openbravo.mobile.core
Changeset: 4ed8e628a232ef3833f94b1e74f17b5ab46fb755
Author: Alejandro <alekosmp86 <at> gmail.com>
Date: Thu Aug 01 15:50:49 2019 -0400
URL: http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/4ed8e628a232ef3833f94b1e74f17b5ab46fb755 [^]

Fixed issue 41456: Added check of 'callback is a function' in failover

---
M web/org.openbravo.mobile.core/source/data/ob-datasource.js
---
(0153040)
biuopome   
2023-08-01 06:31   
test oke and reviews good
contact: https://drift-boss.io [^]