Fixed bug that only occurs in persistent databases (setOperation was not called).
This commit is contained in:
		
							parent
							
								
									63f8a891be
								
							
						
					
					
						commit
						74c881bb5b
					
				| @ -4,7 +4,7 @@ | |||||||
| module.exports = function (Y) { | module.exports = function (Y) { | ||||||
|   var globalRoom = { |   var globalRoom = { | ||||||
|     users: {}, |     users: {}, | ||||||
|     buffers: {}, // TODO: reimplement this idea. This does not cover all cases!! Here, you have a queue which is unrealistic (i.e. think about multiple incoming connections)
 |     buffers: {}, | ||||||
|     removeUser: function (user) { |     removeUser: function (user) { | ||||||
|       for (var i in this.users) { |       for (var i in this.users) { | ||||||
|         this.users[i].userLeft(user) |         this.users[i].userLeft(user) | ||||||
|  | |||||||
| @ -11,6 +11,7 @@ require('../../y-memory/src/Memory.js')(Y) | |||||||
| require('../../y-array/src/Array.js')(Y) | require('../../y-array/src/Array.js')(Y) | ||||||
| require('../../y-map/src/Map.js')(Y) | require('../../y-map/src/Map.js')(Y) | ||||||
| require('../../y-indexeddb/src/IndexedDB.js')(Y) | require('../../y-indexeddb/src/IndexedDB.js')(Y) | ||||||
|  | require('../../y-leveldb/src/LevelDB.js')(Y) | ||||||
| module.exports = Y | module.exports = Y | ||||||
| 
 | 
 | ||||||
| var g | var g | ||||||
| @ -28,7 +29,7 @@ Math.seedrandom = require('seedrandom') | |||||||
| 
 | 
 | ||||||
| g.generateRandomSeed = function generateRandomSeed() { | g.generateRandomSeed = function generateRandomSeed() { | ||||||
|   var seed |   var seed | ||||||
|   if (window.location.hash.length > 1) { |   if (typeof window != 'undefined' && window.location.hash.length > 1) { | ||||||
|     seed = window.location.hash.slice(1) // first character is the hash!
 |     seed = window.location.hash.slice(1) // first character is the hash!
 | ||||||
|     console.warn('Using random seed that was specified in the url!') |     console.warn('Using random seed that was specified in the url!') | ||||||
|   } else { |   } else { | ||||||
| @ -74,6 +75,8 @@ g.wait = wait | |||||||
| g.databases = ['memory'] | g.databases = ['memory'] | ||||||
| if (typeof window !== 'undefined') { | if (typeof window !== 'undefined') { | ||||||
|   g.databases.push('indexeddb') |   g.databases.push('indexeddb') | ||||||
|  | } else { | ||||||
|  |   g.databases.push('leveldb') | ||||||
| } | } | ||||||
| /* | /* | ||||||
|   returns a random element of o. |   returns a random element of o. | ||||||
|  | |||||||
| @ -502,6 +502,7 @@ module.exports = function (Y/* :any */) { | |||||||
|         if (o.right != null) { |         if (o.right != null) { | ||||||
|           var right = yield* this.getOperation(o.right) |           var right = yield* this.getOperation(o.right) | ||||||
|           right.left = o.left |           right.left = o.left | ||||||
|  |           yield* this.setOperation(right) | ||||||
| 
 | 
 | ||||||
|           if (o.originOf != null && o.originOf.length > 0) { |           if (o.originOf != null && o.originOf.length > 0) { | ||||||
|             // find new origin of right ops
 |             // find new origin of right ops
 | ||||||
| @ -568,10 +569,6 @@ module.exports = function (Y/* :any */) { | |||||||
|             } |             } | ||||||
|             // we don't need to set right here, because
 |             // we don't need to set right here, because
 | ||||||
|             // right should be in o.originOf => it is set it the previous for loop
 |             // right should be in o.originOf => it is set it the previous for loop
 | ||||||
|           } else { |  | ||||||
|             // we didn't need to reset the origin of right
 |  | ||||||
|             // so we have to set right here
 |  | ||||||
|             yield* this.setOperation(right) |  | ||||||
|           } |           } | ||||||
|         } |         } | ||||||
|         // o may originate in another operation.
 |         // o may originate in another operation.
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user