From 66f8ffe72941ec552533a4fefaf3d5072cf9ae00 Mon Sep 17 00:00:00 2001 From: Wolfgang Taferner Date: Thu, 18 Oct 2018 11:56:00 +0000 Subject: [PATCH] [FIX] stock: do not crash move_lines return a tuple with empty list Typically if you use an onchange method to retrieve values on the server and convert them to write it will also try to write empty values like [(6, 0, [])] and this will crash as it has also the length of 3 but no dictionary but a list closes odoo/odoo#27937 --- addons/stock/models/stock_picking.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index 47828768f1e..6be5cd8b26a 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -501,7 +501,7 @@ class Picking(models.Model): # As it is a create the format will be a list of (0, 0, dict) if vals.get('move_lines') and vals.get('location_id') and vals.get('location_dest_id'): for move in vals['move_lines']: - if len(move) == 3: + if len(move) == 3 and move[0] == 0: move[2]['location_id'] = vals['location_id'] move[2]['location_dest_id'] = vals['location_dest_id'] res = super(Picking, self).create(vals)