use ES5 Object operations for lazy properties
This commit is contained in:
		
							parent
							
								
									07571b0bbf
								
							
						
					
					
						commit
						21c54da9d1
					
				
							
								
								
									
										35
									
								
								pdf.js
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								pdf.js
									
									
									
									
									
								
							| @ -558,16 +558,37 @@ var PDFDoc = (function () { | ||||
|         this.setup(arrayBuffer); | ||||
|     } | ||||
| 
 | ||||
|     function ShadowGetter(obj, name, value) { | ||||
|         Object.defineProperty(obj, name, { | ||||
|             value: value, | ||||
|             configurable: false, | ||||
|             writable: false, | ||||
|             enumerable: true | ||||
|         }); | ||||
|     } | ||||
| 
 | ||||
|     constructor.prototype = { | ||||
|         getLinearization: function() { | ||||
|             var linearization = this.linearization; | ||||
|             if (!linearization) | ||||
|                 return this.linearization = new Linearization(this.stream); | ||||
|         get linearization() { | ||||
|             var length = this.stream.length; | ||||
|             var linearization = false; | ||||
|             if (length) { | ||||
|                 linearization = new Linearization(this.stream); | ||||
|                 if (linearization.length != length) | ||||
|                     linearization = false; | ||||
|             } | ||||
|             ShadowGetter(this, "linearization", linearization); | ||||
|             return linearization; | ||||
|         }, | ||||
|         isLinearized: function() { | ||||
|             var length = this.stream.length; | ||||
|             return length && this.getLinearization().length == length; | ||||
|         get startXRef() { | ||||
|             var startXRef; | ||||
|             var linearization = this.linearization; | ||||
|             if (linearization) { | ||||
|                 // TODO
 | ||||
|             } else { | ||||
|                 // TODO
 | ||||
|             } | ||||
|             ShadowGetter(this, "startXRef", startXRef); | ||||
|             return startXRef; | ||||
|         }, | ||||
|         // Find the header, remove leading garbage and setup the stream
 | ||||
|         // starting from the header.
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user