From 608b5b1da3c93a688b7e4dace3f2589d5a66d4d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C3=A9dric=20Moreau?= <cem.moreau@gmail.com>
Date: Sat, 24 Feb 2018 18:38:14 +0100
Subject: [PATCH] [fix] #1275 Membership renew provokes a major bug

---
 app/lib/indexer.ts | 2 +-
 doc/Protocol.md    | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/app/lib/indexer.ts b/app/lib/indexer.ts
index c4e4c6b6c..42b8cea88 100644
--- a/app/lib/indexer.ts
+++ b/app/lib/indexer.ts
@@ -222,7 +222,7 @@ export class Indexer {
           unchainables: 0,
           type: 'JOIN',
           expires_on: conf.msValidity,
-          expired_on: null,
+          expired_on: 0,
           revokes_on: conf.msValidity * constants.REVOCATION_FACTOR,
           revocation: null,
           chainable_on: block.medianTime + conf.msPeriod,
diff --git a/doc/Protocol.md b/doc/Protocol.md
index 68a5300a4..f8b7c0b58 100644
--- a/doc/Protocol.md
+++ b/doc/Protocol.md
@@ -2133,6 +2133,8 @@ For each ENTRY in local MINDEX where `op = 'UPDATE', expired_on = 0`:
 
     ENTRY.joinsTwice = REDUCE(GLOBAL_IINDEX[pub=ENTRY.pub]).member == true
 
+> This rule ensures that someone who is in the `Joiners` field isn't already a member.
+
 ####### BR_G27 - ENTRY.enoughCerts
 
 For each ENTRY in local MINDEX where `type == 'JOIN' OR type == 'ACTIVE'`:
-- 
GitLab