~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to services/python-console

  • Committer: Matt Giuca
  • Date: 2010-02-12 10:27:55 UTC
  • Revision ID: matt.giuca@gmail.com-20100212102755-ifsyo4qaqa2myvl5
docs: Added a new help page, Running and Serving.

Show diffs side-by-side

added added

removed removed

Lines of Context:
208
208
 
209
209
        # Try to execute the buffer
210
210
        try:
211
 
            cmd = self.cc(self.curr_cmd, '<web session>')
 
211
            # A single trailing newline simply indicates that the line is
 
212
            # finished. Two trailing newlines indicate the end of a block.
 
213
            # Unfortunately, codeop.CommandCompiler causes even one to
 
214
            # terminate a block.
 
215
            # Thus we need to remove a trailing newline from the command,
 
216
            # unless there are *two* trailing newlines, or multi-line indented
 
217
            # blocks are impossible. See Google Code issue 105.
 
218
            cmd_text = self.curr_cmd
 
219
            if cmd_text.endswith('\n') and not cmd_text.endswith('\n\n'):
 
220
                cmd_text = cmd_text[:-1]
 
221
            cmd = self.cc(cmd_text, '<web session>')
212
222
            if cmd is None:
213
223
                # The command was incomplete, so send back a None, so the              
214
224
                # client can print a '...'
389
399
    for o in object:
390
400
        try:
391
401
            flat[o] = cPickle.dumps(object[o], PICKLEVERSION)
392
 
        except TypeError:
 
402
        except (TypeError, cPickle.PicklingError):
393
403
            try:
394
404
                o_type = type(object[o]).__name__
395
405
                o_name = object[o].__name__