Commit Graph

1880 Commits (1bc9d61027c5bac87fd59e42b248ddd2edef119c)

Author SHA1 Message Date
Marcel Klehr 1bc9d61027 Update npm (fix #1012) 2012-10-25 13:38:28 +02:00
Matthias Bartelmeß 7f158f697b Merge pull request #1081 from clkao/develop
Do not assume window object exists
2012-10-25 01:24:18 -07:00
Chia-liang Kao 8199bf8377 Do not assume window object exists 2012-10-23 15:21:05 +08:00
John McLear 429651874f Merge pull request #1072 from marcelklehr/fix/timeslider-links-regexp
Fix #1067 Corrected exports links regexp
2012-10-16 13:36:20 -07:00
Marcel Klehr 6c89187f95 Fix #1067 Corrected exports links regexp 2012-10-16 20:46:27 +02:00
John McLear b7d0751b18 couch, level, mongo, postgres, redis DB support
Support for additional underlying databases
2012-10-15 13:09:55 +02:00
John McLear c45739becb Update src/package.json
Bump version #
2012-10-11 23:38:56 +02:00
John McLear da9439d36e Merge pull request #1059 from lepidum/develop
Fix for #1032 caused by pull-request 999
2012-10-11 10:12:54 -07:00
lepidum 250901bef5 Merge pull request #3 from ayokura/fix-international-composition
fix Pita/etherpad-lite #1032 (International composition (e.g. Japanese Input))
2012-10-11 09:20:28 -07:00
NAGOYA, Yoshihiko 957a0aa873 fix Pita/etherpad-lite #1032
refact inInternationalComposition
2012-10-12 01:12:15 +09:00
John McLear d7ec050f34 Merge pull request #1035 from amtep/develop
Guard against malicious clients in USERINFO_UPDATE handling
2012-10-11 08:27:27 -07:00
Marcel Klehr bedc51d2e3 Merge pull request #1057 from dmitryuv/sync-processing
fix for error handling in the callback code
2012-10-11 08:08:47 -07:00
Dmitry dbcdc2f956 fix for error handling in callback code
The callback code does not follow error handling guidelines, thus always
receiving NULL instead of results array.
2012-10-11 18:07:45 +04:00
Marcel Klehr 1461c4e19a Merge pull request #1056 from dmitryuv/sync-processing
Fix variable name in handleMessageHook
2012-10-11 07:05:51 -07:00
Dmitry 0fa954c1a0 fixed variable name in handleMessageHook
the code would never work as expected with this type
2012-10-11 17:51:57 +04:00
John McLear 442c5714f9 Merge pull request #1049 from cweider/fix-express
Drop method deprecated in Express 3.x.
2012-10-09 05:19:17 -07:00
Chad Weider 9d1274abaf Drop method deprecated in Express 3.x. 2012-10-09 01:32:21 -07:00
John McLear 90373964d3 Remove two instances of the same function name
Both functions did the same thing, the first function was buggy.  Might be worth someone looking through the history of this file and pointing out when I made this heinous error ;)
2012-10-06 02:36:51 +02:00
John McLear db1a1a0e3e Merge pull request #1034 from d-a-n/develop
Added hooks for pad events create/edit/load/remove
2012-10-05 17:28:40 -07:00
John McLear a1280fd917 Merge pull request #1004 from yourcelf/develop
Add `userColor` query param to set initial color
2012-10-04 10:57:16 -07:00
johnyma22 a97c63b809 Fix issue caused by broken async update 2012-10-04 18:53:02 +01:00
John McLear 66475f32f3 Merge pull request #1003 from Pita/express-v3
Upgrade Express to v3 [proposal]
2012-10-03 06:25:44 -07:00
John McLear f408d0f9c7 Merge pull request #1038 from cweider/fix-relative
Upgrade to Yajsml bug fix.
2012-10-03 06:16:28 -07:00
d-a-n a521a12583 Changed pad_id to padID to follow projct standards. 2012-10-03 15:50:43 +03:00
d-a-n 0fd8490ca6 Changed pad_id to padID to follow projct standards. 2012-10-03 15:49:28 +03:00
d-a-n 358e481731 Changed pad hook names to follow naming conventions. Arguments will now be passed as hash. 2012-10-03 13:41:40 +03:00
d-a-n 754c559d63 Changed pad hook names to follow naming conventions. 2012-10-03 13:35:31 +03:00
Marcel Klehr 2684a1d295 Merge branch 'develop' into express-v3
Conflicts:
	src/node/hooks/express/errorhandling.js
2012-10-03 10:09:00 +02:00
Chad Weider b29fc11e9d Upgrade to Yajsml bug fix. 2012-10-02 19:57:23 -07:00
Richard Braakman 85b44119ae USERINFO_UPDATE: construct a new message for broadcast
The server was reusing the client's message when broadcasting userinfo
updates. This would allow a malicious client to insert arbitrary fields
into a message that the other clients would trust as coming from the
server. For example, adding "disconnect" or renaming other authors.

This commit fixes it by having the server construct a new message with
known fields before broadcasting.
2012-10-02 23:27:30 +03:00
d-a-n 4652751285 Updated docs for new pad hooks (add, edit, remove) 2012-10-02 22:32:30 +03:00
d-a-n 64a3d60b94 Added pad hooks (create, load, edit, remove) 2012-10-02 22:30:13 +03:00
d-a-n c0f2e557d3 Updated docs for new pad hooks (add, edit, remove) 2012-10-02 22:11:54 +03:00
d-a-n 07c33c77c4 Updated docs for new pad hooks (add, edit, remove) 2012-10-02 22:10:18 +03:00
John McLear 2cf46d3964 Merge pull request #1031 from gedion/develop
Update docs for new hooks and ace exposures
2012-10-02 11:31:58 -07:00
John McLear c0a2202e34 Merge pull request #1033 from marcelklehr/fix/shutdown-on-middlware-error
Don't shut down the whole server, if error handling middleware is called...
2012-10-02 11:31:41 -07:00
Marcel Klehr 7656001cb5 Don't shut down the whole server, if error handling middleware is called.
The errors passed to error handling middleware aren't that severe, so it's fine to just stay alive...
2012-10-02 20:11:18 +02:00
John McLear 56453409a5 Update src/static/js/pad_editbar.js
Somehow </iframe> was no more.  Now it is back..  Oh boy.
2012-10-02 02:19:44 +02:00
Gedion 6009903095 added comments to ace exposed methods 2012-10-01 19:18:19 -05:00
Gedion 61022be6e4 added comments to ace exposed methods 2012-10-01 19:14:27 -05:00
John McLear 7f6a81b0ed Merge pull request #1006 from cweider/ace-cleanup
Ace cleanup
2012-10-01 13:05:10 -07:00
Gedion 3fe3df91ae update docs for new hooks and ace exposures 2012-09-30 17:13:14 -05:00
John McLear c75941d1e3 Merge pull request #1028 from amtep/develop
Fix server crash if client disconnects too soon after connecting
2012-09-30 04:22:36 -07:00
John McLear d91b1ecd24 Merge pull request #1020 from marcelklehr/fix/express-v3
Fixes for express-v3 branch
2012-09-30 04:22:17 -07:00
Richard Braakman 2e72a1e489 Prevent server crash in handleClientReady
The client might have disconnected between callbacks so don't try to
write to the session before checking this. The main callback of this
function now has a single check at its top.

Removed a redundant check halfway through the callback.

Also normalized use of client.id for the session index instead of a mix of
client.id and sessionId.

Added some explanatory comments.
2012-09-28 23:23:00 +03:00
Richard Braakman 413ddb393e Add some explanatory comments to handleUserChanges() 2012-09-28 22:49:20 +03:00
Marcel Klehr 3578e36616 Merge pull request #1025 from amtep/develop
Fix race condition and a stack error caused by too old changesets
2012-09-28 05:43:47 -07:00
Richard Braakman 7aaef01346 Prettify session handling in handleUserChanges
Also add a comment to explain what's going on with thisSession.
No changes in behavior.
2012-09-27 23:07:00 +03:00
Richard Braakman f1b4206cad Fix crash when client submits changeset based on too-old revision
We had a problem with the server running out of stack space if a client
submitted a changeset based on a revision more than about 1000 revs old.
(944 was our cutoff but yours may vary). This happened in the wild with
about 30 people editing via flaky wifi. A disconnected client would try
to submit a fairly old changeset when reconnecting, and a few minutes
was enough for 30 people to generate that many revs.

The stack kept growing because pad.getRevisionChangeset was being answered
from the cache, so no I/O interrupted the callback chain. (This was seen with
mysql, I don't know about other backends.)

This patch forces a nextTick every 200 revisions to solve this problem.
2012-09-26 03:01:59 +03:00
Richard Braakman e16008b371 Fix sessioninfos race that can cause crash during USER_CHANGES handling
When stress testing etherpad-lite we occasionally got this error:

TypeError: Cannot read property 'author' of undefined
    at /home/etherpad/etherpad-lite/src/node/handler/PadMessageHandler.js:556:47

handleUserChanges was accessing sessioninfos[client.id].author in a callback,
after spending some time in the loop that updates the changeset to the
latest revision. It's possible for a disconnect request to be processed
during that loop so the session might no longer be there.

This patch fixes it by looking up the author at the start of the function.
2012-09-26 03:01:59 +03:00